rgs suggested to try B::Concise, which show you what the opcode tree looks like. Try the patch below. Does it still fail as before? (all I did is just commenting out some redundant code, which will not prevent us from running. If it does fail the same way, uncomment the line:

 #B::Concise::compile(__PACKAGE__."::set_ulimit_via_sh")->();

run:

% t/TEST -start

and post the output. Thanks.

Index: lib/Apache/TestRun.pm
===================================================================
RCS file: 
/home/cvs/httpd-test/perl-framework/Apache-Test/lib/Apache/TestRun.pm,v
retrieving revision 1.156
diff -u -r1.156 TestRun.pm
--- lib/Apache/TestRun.pm       4 Mar 2004 05:51:31 -0000       1.156
+++ lib/Apache/TestRun.pm       11 Mar 2004 18:29:52 -0000
@@ -612,26 +612,26 @@
 }

 sub set_ulimit_via_sh {
-    return if Apache::TestConfig::WINFU;
+#    return if Apache::TestConfig::WINFU;
     return if $ENV{APACHE_TEST_ULIMIT_SET};
-    my $binsh = '/bin/sh';
-    return unless -e $binsh;
+#    my $binsh = '/bin/sh';
+#    return unless -e $binsh;
     $ENV{APACHE_TEST_ULIMIT_SET} = 1;

-    my $sh = Symbol::gensym();
-    open $sh, "echo ulimit -a | $binsh|" or die;
-    local $_;
-    while (<$sh>) {
-        if (/^core.*unlimited$/) {
-            #already set to unlimited
-            $ENV{APACHE_TEST_ULIMIT_SET} = 1;
-            return;
-        }
-    }
-    close $sh;
+#    my $sh = Symbol::gensym();
+#    open $sh, "echo ulimit -a | $binsh|" or die;
+#    local $_;
+#    while (<$sh>) {
+#        if (/^core.*unlimited$/) {
+#            #already set to unlimited
+#            $ENV{APACHE_TEST_ULIMIT_SET} = 1;
+#            return;
+#        }
+#    }
+#    close $sh;

     $original_command = "ulimit -c unlimited; $original_command";
-    warning "setting ulimit to allow core files\n$original_command";
+    #warning "setting ulimit to allow core files\n$original_command";
     exec $original_command;
     die "exec $original_command has failed"; # shouldn't be reached
 }
@@ -639,6 +639,10 @@
 sub set_ulimit {
     my $self = shift;
     #return if $self->set_ulimit_via_bsd_resource;
+
+    use B::Concise;
+    #B::Concise::compile(__PACKAGE__."::set_ulimit_via_sh")->();
+
     eval { $self->set_ulimit_via_sh };
 }


__________________________________________________________________ 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

Reply via email to