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!

Wow, you mean ithreads no longer fail? Here is the fix:

Index: t/response/TestModperl/setupenv.pm
===================================================================
--- t/response/TestModperl/setupenv.pm  (revision 106595)
+++ t/response/TestModperl/setupenv.pm  (working copy)
@@ -181,7 +181,7 @@

     KeepAlive On

-    <IfDefine PERL_ITHREADS>
+    <IfDefine PERL_USEITHREADS>
         PerlInterpScope connection
     </Ifdefine>

Index: t/response/TestApache/cgihandler.pm
===================================================================
--- t/response/TestApache/cgihandler.pm (revision 106595)
+++ t/response/TestApache/cgihandler.pm (working copy)
@@ -41,6 +41,6 @@
 1;
 __END__
 SetHandler perl-script
-<IfDefine PERL_ITHREADS>
+<IfDefine PERL_USEITHREADS>
     PerlInterpScope handler
 </IfDefine>


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(

I'll look at this.

--
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to