[yocto] [PATCH 2/2] buildslave-janitor: Add in try/except handling to make calls robust against failure

Flanagan, Elizabeth elizabeth.flanagan at intel.com
Wed Mar 19 08:38:04 PDT 2014


Agreed. Pulling them. Thanks.

-b

On Wed, Mar 19, 2014 at 7:28 AM, Burton, Ross <ross.burton at intel.com> wrote:
> Both patches look good, Reviewed-by: Ross Burton <ross.burton at intel.com>
>
> Ross
>
> On 19 March 2014 14:03, Richard Purdie
> <richard.purdie at linuxfoundation.org> wrote:
>> There is a suspicion that the command can fail causing the janitor trash
>> removal process to exit. This adds in some exception handling to deal
>> with this. It include a timeout to stop it entering nasty loops.
>>
>> This combined with the previous patch should let us figure out what
>> error conditions its hitting.
>>
>> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
>> ---
>>  bin/buildslave-janitor | 15 ++++++++++-----
>>  1 file changed, 10 insertions(+), 5 deletions(-)
>>
>> diff --git a/bin/buildslave-janitor b/bin/buildslave-janitor
>> index 153f18d..2cfef86 100755
>> --- a/bin/buildslave-janitor
>> +++ b/bin/buildslave-janitor
>> @@ -66,11 +66,16 @@ def trash_processor(trashdir):
>>          print("Not prepared to use a trashdir of /")
>>          return
>>      while True:
>> -        files = os.listdir(trashdir)
>> -        if files:
>> -            os.system("ionice -c 3 rm %s -rf" % trashdir)
>> -        else:
>> -            time.sleep(30*60) # 30 minutes
>> +        try:
>> +            files = os.listdir(trashdir)
>> +            if files:
>> +                os.system("ionice -c 3 rm %s -rf" % trashdir)
>> +            else:
>> +                time.sleep(30*60) # 30 minutes
>> +        except Exception as e:
>> +            print("Exception %s in trash cleaner" % str(e))
>> +            time.sleep(60) # 1 minute timeout to prevent crazy looping
>> +            pass
>>      return
>>
>>  def mirror_processor(mirrordir):
>>
>>
>>
> ---------------------------------------------------------------------
> Intel Corporation (UK) Limited
> Registered No. 1134945 (England)
> Registered Office: Pipers Way, Swindon SN3 1RJ
> VAT No: 860 2173 47
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.



-- 
Elizabeth Flanagan
Yocto Project
Build and Release



More information about the yocto mailing list