a few waitpids periodically.
D6YQQQCNJT7RJ4KF5JN76NM5HT4FVROBGSNB26LYPRYVLEG576MAC YTESD75ZEM5RKKKQGS22LCJBGLDJIGYDEHRRW4XD7IUPDXLOCWLQC AFTXA575C6JTVLVXTYJUKQGPLBO3NFORLO5XDSPHNL44HXLRH4TAC TULPZ62YXEHXUWGBZMLCLYILEXPQS5ADPT22574BIRFU4CZMBSKAC 7YBYT2LQML2PKEO6UO4444AGSASS664UCDXW2YO3ALB7THQHCEBQC WHAFVCEIHCWHKY2UVRGRQORERUAK6SZJI7ZENA367ZX4EXDIQMDQC JK2QWPH6EOQXGCADV7C5HSYRVWC5M53LAKVN26EMTLY65IKU3AEQC DQD7JMSUAPXKASPXUDXY4LCE6QCAZSGWNQYTOKNIQE6RRSRP4KGAC WM5WAST3S67EWKA52NVQ2V55XO6E4WRPAOUGSQGA7XDX46ARX4OQC N22GPKYTOLZLBGTGDATQDVZ4R5APZEAOIA7L32X4UXBH4XNI7MWAC if (kill(0, $pid) != 1) { # see if we can signal the process
my $unlock = 0;if ($pid == $$) {# Work around sqlite locking timeouts: if the child# barfed because of a locked DB before updating the# `locker' field, then `locker' is still set to $$.# So if after 2 minutes it hasn't been updated,# unlock the build. !!! need a better fix for those# locking timeouts.if ($build->schedulingInfo->starttime + 10 < time) {$unlock = 1;}} elsif (kill(0, $pid) != 1) { # see if we can signal the process$unlock = 1;}if ($unlock) {