perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Steve Hay <steve....@uk.radan.com>
Subject Re: t/perl/ithreads.t revisited
Date Mon, 06 Dec 2004 16:45:23 GMT
Philippe M. Chiasson wrote:

>Stas Bekman wrote:
>  
>
>>Steve Hay wrote:
>>
>>    
>>
>>>>>Next I want you to try cutting off things from startup files and 
>>>>>httpd.conf, to find whether it's some unrelated module that is 
>>>>>loaded that causes the problem. I suspect that because the sister 
>>>>>test t/perl/ithreads2.t doesn't fail, and it runs exactly the same 
>>>>>code, but inside a dedicated interpreter pool, which doesn't load 
>>>>>any other modules.
>>>>>          
>>>>>
>>>>Will try (again), but I've tried this before and got nowhere with it :(
>>>>
>>>>        
>>>>
>>>While trawling through the httpd.conf file I found a couple of what 
>>>look like errors:  Two places say "PERL_ITHREADS" instead of 
>>>"PERL_USEITHREADS".  Correcting these apparent mistakes fixes the 
>>>broken test sequence previously reported!
>>>      
>>>
>>[...]
>>
>>    
>>
>>>After making this change I found that reload.t now fails test 2.  This 
>>>patch (against current CVS, since I can't get SVN working) fixes that:
>>>
>>>Index: t/modules/reload.t
>>>===================================================================
>>>RCS file: /home/cvspublic/modperl-2.0/t/modules/reload.t,v
>>>retrieving revision 1.4
>>>diff -u -u -r1.4 reload.t
>>>--- t/modules/reload.t  11 Sep 2004 01:02:28 -0000      1.4
>>>+++ t/modules/reload.t  26 Nov 2004 18:05:21 -0000
>>>@@ -53,7 +53,7 @@
>>> touch_mtime($test_file);
>>>
>>> {
>>>-    my $expected = join '', map { "$_:" . uc($_) . "\n" } sort @tests;
>>>+    my $expected = join '', map { "$_:$_\n" } sort @tests;
>>>     my $received = get_body($same_interp, \&GET, $location);
>>>     $skip++ unless defined $received;
>>>     skip_not_same_interp(
>>>      
>>>
>
>That's not a correct fix to the problem. reload.t is apparently now failing for
>you, and this patch just ignores the failure. 
>
OK, current state of play is this:

With fresh svn check-out, all tests pass OK if I skip t/perl/ithreads, 
but with t/perl/ithreads the server crashes on that test.

As before, this sequence reliably fails:

perl t/TEST -verbose t/modules/reload.t t/perl/api.t t/perl/ithreads.t

It still fails with the attached much-shortened conf file.  Note that 
I've commented-out a top-level PerlInterpScope directive, in line with 
recent changes.  If I re-instate that directive then t/perl/ithreads no 
longer crashes, but t/modules/reload fails as described above.

Are we sure that the PerlInterpScope directive should not be at the 
top-level?  If so, then reload.t is OK and we still have ithreads.t to fix.

I'll try whittling down the conf even further.

- Steve


------------------------------------------------
Radan Computational Ltd.

The information contained in this message and any files transmitted with it are confidential
and intended for the addressee(s) only.  If you have received this message in error or there
are any problems, please notify the sender immediately.  The unauthorized use, disclosure,
copying or alteration of this message is strictly forbidden.  Note that any views or opinions
presented in this email are solely those of the author and do not necessarily represent those
of Radan Computational Ltd.  The recipient(s) of this message should check it and any attached
files for viruses: Radan Computational will accept no liability for any damage caused by any
virus transmitted by this email.

Mime
View raw message