On Thu, Mar 11, 2004 at 10:32:08AM -0800, Stas Bekman wrote: > 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.
I had troubles applying the patch (I was using `patch -u -p0 < TestRun.pm.diff`), so just manually made the changes. Not much to report as the server started up with no errors. I went back and uncommented the lines in set_ulimit_via_sh and tried starting the server. It starts up fine. I figured that my system was about to make a liar out of me but when I ran the tests, I got the error. Furthermore, if I commented ou the lines in set_ulimit_via_sh as per the patch you sent, I continue to get the error. So, I uncommented the B::Concise line and here's the output: ----------------------------------------------- Apache::TestRun::set_ulimit_via_sh: w <1> leavesub[1 ref] K/REFC,1 ->(end) - <@> lineseq KP ->w 1 <;> nextstate(Apache::TestRun -413 TestRun.pm:616) v/2 ->2 - <1> null vK/1 ->9 6 <|> and(other->7) vK/1 ->9 5 <2> helem sK/2 ->6 3 <1> rv2hv sKR/3 ->4 2 <$> gv(*ENV) s ->3 4 <$> const(PVIV "APACHE_TEST_ULIMIT_SET") s/BARE ->5 8 <@> return K ->9 7 <0> pushmark s ->8 9 <;> nextstate(Apache::TestRun -413 TestRun.pm:619) v/2 ->a f <2> sassign vKS/2 ->g a <$> const(IV 1) s ->b e <2> helem sKRM*/2 ->f c <1> rv2hv sKR/3 ->d b <$> gv(*ENV) s ->c d <$> const(PVIV "APACHE_TEST_ULIMIT_SET") s/BARE ->e g <;> nextstate(Apache::TestRun -413 TestRun.pm:633) v/2 ->h - <1> ex-stringify sK/17 ->k - <0> ex-pushmark s ->h j <2> concat[$original_command:FAKE] sK/TARGMY,2 ->k h <$> const(PV "ulimit -c unlimited; ") s ->i i <0> padsv[$original_command:FAKE] s ->j k <;> nextstate(Apache::TestRun -413 TestRun.pm:635) v/2 ->l n <@> exec[t4] vK ->o l <0> pushmark s ->m m <0> padsv[$original_command:FAKE] l ->n o <;> nextstate(Apache::TestRun -413 TestRun.pm:636) v/2 ->p v <@> die[t8] sK/1 ->w p <0> pushmark s ->q - <1> ex-stringify sK/1 ->v - <0> ex-pushmark s ->q u <2> concat[t6] sKS/2 ->v s <2> concat[t5] sK/2 ->t q <$> const(PV "exec ") s ->r r <0> padsv[$original_command:FAKE] s ->s t <$> const(PV " has failed") s ->u Apache::TestRun::set_ulimit_via_sh: w <1> leavesub[1 ref] K/REFC,1 ->(end) - <@> lineseq KP ->w 1 <;> nextstate(Apache::TestRun -413 TestRun.pm:616) v/2 ->2 - <1> null vK/1 ->9 6 <|> and(other->7) vK/1 ->9 5 <2> helem sK/2 ->6 3 <1> rv2hv sKR/3 ->4 2 <$> gv(*ENV) s ->3 4 <$> const(PVIV "APACHE_TEST_ULIMIT_SET") s/BARE ->5 8 <@> return K ->9 7 <0> pushmark s ->8 9 <;> nextstate(Apache::TestRun -413 TestRun.pm:619) v/2 ->a f <2> sassign vKS/2 ->g a <$> const(IV 1) s ->b e <2> helem sKRM*/2 ->f c <1> rv2hv sKR/3 ->d b <$> gv(*ENV) s ->c d <$> const(PVIV "APACHE_TEST_ULIMIT_SET") s/BARE ->e g <;> nextstate(Apache::TestRun -413 TestRun.pm:633) v/2 ->h - <1> ex-stringify sK/17 ->k - <0> ex-pushmark s ->h j <2> concat[$original_command:FAKE] sK/TARGMY,2 ->k h <$> const(PV "ulimit -c unlimited; ") s ->i i <0> padsv[$original_command:FAKE] s ->j k <;> nextstate(Apache::TestRun -413 TestRun.pm:635) v/2 ->l n <@> exec[t4] vK ->o l <0> pushmark s ->m m <0> padsv[$original_command:FAKE] l ->n o <;> nextstate(Apache::TestRun -413 TestRun.pm:636) v/2 ->p v <@> die[t8] sK/1 ->w p <0> pushmark s ->q - <1> ex-stringify sK/1 ->v - <0> ex-pushmark s ->q u <2> concat[t6] sKS/2 ->v s <2> concat[t5] sK/2 ->t q <$> const(PV "exec ") s ->r r <0> padsv[$original_command:FAKE] s ->s t <$> const(PV " has failed") s ->u ----------------------------------------------- I hope this helps someone understand what's happening on my end. I'm afraid it's pretty foreign to me since I have not studied the Perl internals. Let me know if I can provide any further testing. Thanks, William -- Knowmad Services Inc. http://www.knowmad.com