green_threads
Matthew Boyle
mlb at corefiling.com
Fri Oct 21 16:47:58 UTC 2011
On 20/10/11 18:46, Stefan Seifert wrote:
> On Thursday 20 October 2011 18:14:31 Matthew Boyle wrote:
>> On 19/10/11 17:33, Matthew Boyle wrote:
>>> it currently fails to build on Linux (Fedora 14, x64) when configured
>>
>>> using { --cc=g++ --ld=g++ --link=g++ }:
>> I'm also seeing intermittent failures in<t/pmc/alarm.t>. usually just
>> tests 3 and 4, occasionally 1 and 2, but i've seen the first four tests
>> all fail at once.
>>
>> i've been able to consistently reproduce it thus:
>>
>> COUNT=1; while prove t/pmc/alarm.t; do echo $((COUNT++)); done;
>>
>> the failure seems to be extremely load-dependent (kicking off a couple
>> of { cat /dev/zero | sha384sum } pipelines in the background can make it
>> fail within a couple of iterations).
>
> Thank you. That's an excellent test procedure.
> I can reproduce it and it's pretty obvious, that the test itself is in error.
no problem! glad you found it useful.
i've not seen the problem since, so i think this can safely be
considered fixed :-)
> The test assumes that the alarms will fire in the order in which they are set
> and that they execute in the same order. But on a highly loaded system and
> with active preemption it's no longer possible to tell which task will run in
> which order. So the only meaningful tests are the "All alarms executed",
> "Alarms actually waited" and "Alarm/sleep interaction" tests.
>
> And even of these these, the "Alarms actually waited" test could wrongly
> succeed and the "Alarm/sleep interaction" wrongly fail on an extremely loaded
> system. But those are probably inherent with timer related tests.
yeah. fun things to test, aren't they? :-/
cheers,
--matt
--
Matthew Boyle, Systems Administrator, CoreFiling Limited
Telephone: +44-1865-203192 Website: http://www.corefiling.com
More information about the parrot-dev
mailing list