Subject: | Bottomless Recursion and Segmentation Fault under Perl 5.10.0 |
Dear John Clutterbuck,
Hi. This is imacat from Taiwan. I found that your
Devel-ObjectTracker-0.4 gets into bottomless deep recursion under Perl
5.10.0, which eats up all the memory and dies. I tried to investigate
further. It seems that in package DB of your ObjectTracker.pm, the "sub
sub" calls itself recursively, which in turn goes infinitely.
I do not know what to do with this situation. Maybe you can take
some time to look into this issue.
The terminal log is attached below. Hope that this helps. Please
tell me if you need any more information, or if I could be of any help.
Thank you.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3201 imacat 25 0 1011m 975m 1876 R 100 48.5 0:05.60 perl
imacat@rinse tmp/Devel-ObjectTracker-0.4 % perl -v
This is perl, v5.10.0 built for x86_64-linux-thread-multi-ld
Copyright 1987-2007, Larry Wall
Perl may be copied only under the terms of either the Artistic License
or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
imacat@rinse tmp/Devel-ObjectTracker-0.4 % make test
t/00_prepare.............ok
t/01_basic_settings......1/? make: *** wait: No child processes. Stop.
make: *** Waiting for unfinished jobs....
make: *** wait: No child processes. Stop.
imacat@rinse tmp/Devel-ObjectTracker-0.4 % perl -Iblib/lib -Iblib/arch
t/01_basic_settings.t
1..6
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
zsh: segmentation fault perl -Iblib/lib -Iblib/arch t/01_basic_settings.t
imacat@rinse tmp/Devel-ObjectTracker-0.4 % perl -e'print "OK\n";'
OK
imacat@rinse tmp/Devel-ObjectTracker-0.4 % perl -Iblib/lib
-d:ObjectTracker -e'print "OK\n";'
ObjectTracker Session ID for future objects=1
ObjectTracker creating log file:ObjectTracker.log sub_match=/./
class_exclude=/(HASH|ARRAY|GLOB)/ class_match=/./ verbose=1
OK
zsh: segmentation fault perl
-I/home/imacat/tmp/Devel-ObjectTracker-0.4/blib/lib -d:ObjectTracker
imacat@rinse tmp/Devel-ObjectTracker-0.4 %