I noticed Andreas Koenig opened a bug report on Inline (RT#85336)
wherein he asserts there's probably a race condition present, as he's
finding that operating several smokers in parallel will sometimes
result in failures.

This may be related to an issue I see, where running Inline::CPP's
test suite with HARNESS_OPTIONS=j9 will also result in failures.
Inline::CPP's tests are not sensitive to script order (tests within a
script must be run in order, but it shouldn't matter what order the
test scripts are run).  As they're not order-sensitive, failure under
harness parallel testing has to point to a race condition within
Inline::CPP or Inline.

I'm going to look over Inline::CPP's code base with added scrutiny to
assure that any IO operations it owns are implementing flocking.  But
it doesn't own many IO operations; most IO is pushed off to Inline, or
the compilers themselves.

One area I hadn't previously considered is Makefile.PL itself, which
opens a file for output.  That should be fine under normal user
conditions, but could present a problem for smokers running in
parallel.

Dave

--

David Oswald
daosw...@gmail.com

Reply via email to