Builds on buildsys.fedoraproject.org fails, but the build self will work.

Michael Schwendt mschwendt.tmp0701.nospam at arcor.de
Wed Sep 19 08:37:52 UTC 2007


On Tue, 18 Sep 2007 22:36:15 -0400, Dan Williams wrote:

> > [1] http://home.arcor.de/ms2002sep/tmp/plague-0.4.4.1-racecondition.patch
> 
> Workaround looks sane, diagnosis is correct, thanks for tracking this
> down and fixing it.  Out of curiosity, did a mock update or a hardware
> change exacerbate the issue?  We only just started seeing this after ~2
> years of using plague.

I have doubts that the .../mock-state/status file is in sync with
mock. It either shows symptoms of buffering or changes too
quickly. It stays in "prep" for most of the time, then very
quickly steps through "setu" -> "buil" -> "done". So quickly that
plague-builder cannot sleep for 3 secs without missing the state
changes before mock is done.

Perhaps this is different for longer builds which don't run for just
6-8 minutes.

Look at this debug log excerpt made when plague-builder was monitoring
the "prepping" step (the "string" value is the four chars from the
mock-state file after a refresh):

Running _status_prepping: prepping
string = prep
_watch_mock(): waitpid = 0,0
continuing _status_prepping: prepping
string = prep
Running _status_prepping: prepping
string = done

      ^ here mock-state changed while plague-builder was sleeping for 3s
      => from "prep" to mock-exit in plague-builder's view (!)
      => when not reloading mock's state file to verify

string = done
_watch_mock(): waitpid = 4139,0
_watch_mock(): PID 4139 exit status 0
Setting Status Good! - failed

      ^ this is based on the assumption that a mock-exit during
      "prepping" would always be an error condition despite the
      zero exit code

init
clean
prep
This may take a while
setup
build
ending
done

    ^ this is what mock has processed actually while plague-builder
    assumed that mock still was doing only "prep"+"setu"

Results and/or logs in: /mnt/build/builder_work/46bb3113e41a4745e4b1217cb9d5b6b8ef5cc73b/result
Cleaning up the buildroot...
   /usr/bin/setarch ppc32 /usr/bin/mock clean --uniqueext=46bb3113e41a4745e4b1217cb9d5b6b8ef5cc73b -r fedora-6-ppc-core




More information about the fedora-devel-list mailing list