Skip Menu |

This queue is for tickets about the Module-CPANTS-Analyse CPAN distribution.

Report information
The Basics
Id: 85421
Status: resolved
Priority: 0/
Queue: Module-CPANTS-Analyse

People
Owner: Nobody in particular
Requestors: KENTNL [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: (no value)
Fixed in: (no value)



Subject: (Hard to repeat) failure when running under HARNESS_OPTIONS=j5
I got this error on one pass, but its hard to reproduce, because it appears to be some sort of race condition  between 2 tests trying to both read/write the same file, or something like that.

The fail is kinda lenghty, so I'll put it in its own reply so RT doesn't get all "helpful" and hide the entire bug report due to being "too long".

Message body is not shown because it is too large.

RT, what the fuck. What the actual fuck. Why am I getting HTML when I ask to view the message.

Helpful.

On 2013-05-19 08:18:04, KENTNL wrote:
Show quoted text
> RT, what the fuck. What the actual fuck. Why am I getting HTML when I ask to
> view the message.
>
> Helpful.


Ok, Have a way to repeat it reliably now:

make clean ; rm Debian_CPANTS.txt ; rm t/corpus/Debian_CPANTS.txt ; perl Makefile.PL ; make ; HARNESS_OPTIONS=j5 make test

The reason its hard to repeat is t/corpus/Debian_CPANTS.txt is provisioned in the first pass, and the problem is r/w with that file, so if you simply repeat the tests it will pass on successive runs.
On 2013-05-18 13:26:47, KENTNL wrote: Show quoted text
> Ok, Have a way to repeat it reliably now: > > make clean ; rm Debian_CPANTS.txt ; rm t/corpus/Debian_CPANTS.txt ; > perl > Makefile.PL ; make ; HARNESS_OPTIONS=j5 make test > > The reason its hard to repeat is t/corpus/Debian_CPANTS.txt is > provisioned in > the first pass, and the problem is r/w with that file, so if you > simply repeat > the tests it will pass on successive runs.
This sounds like a problem deep in Module::CPANTS::Analyse (Test::Kwalitee doesn't do much other than run those indicators), so I'm bumping this ticket over to them... The repro steps pertain to Test::Kwalitee 1.06, which has several tests that run kwalitee metrics in succession.
13:52 < kentnl> even a test that just does bail_out if $ENV{HARNESS_OPTIONS} =~ /j(\d+)/ and $1 ne 1 ; that would be great 13:53 <@ether> the first thing that comes to mind is that each call to the analysers should use its own randomly-named temp file, rather than using one -- so simultaneous runs don't stomp all over each other
Closing this as it looks like this has been resolved since 0.88/0.91 when the problematic debian metrics were removed. Thanks.