Help! Suddenly getting stacktraces


#1

Hello,

We have been running RT for about a year and it has suddenly started running slowly. Looking at the RT.log file, we are seeing a whole bunch of stack-traces, for no reason I can ascertain. Anyone any ideas why these would suddenly start appearing?

[Fri May 16 04:33:57 2008] [error]: SQL(0.00s): SELECT count(main.id) FROM Tickets main WHERE (main.Status != ‘deleted’) AND (main.Queue = ‘22’ AND main.Status = ‘stalled’) AND (main.Type = ‘ticket’) AND (main.EffectiveId = main.id) ; (/opt/rt3/share/html/autohandler:319)

Stack trace:
HTML::Mason::Commands::ANON() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Component.pm:135
HTML::Mason::Component::run() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:1246
(eval)() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:1245
HTML::Mason::Request::comp() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:459
(eval)() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:459
(eval)() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:411
HTML::Mason::Request::exec() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/ApacheHandler.pm:168
HTML::Mason::Request::ApacheHandler::exec() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/ApacheHandler.pm:826
HTML::Mason::ApacheHandler::handle_request() called at /opt/rt3/bin/webmux.pl:125
(eval)() called at /opt/rt3/bin/webmux.pl:125
RT::Mason::handler() called at -e:0
(eval)() called at -e:0
[Fri May 16 04:33:57 2008] [error]: SQL(0.00s): SELECT count(main.id) FROM Tickets main WHERE (main.Status != ‘deleted’) AND (main.Queue = ‘13’ AND main.Status = ‘new’) AND (main.Type = ‘ticket’) AND (main.EffectiveId = main.id) ; (/opt/rt3/share/html/autohandler:319)

Stack trace:
HTML::Mason::Commands::ANON() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Component.pm:135
HTML::Mason::Component::run() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:1246
(eval)() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:1245
HTML::Mason::Request::comp() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:459
(eval)() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:459
(eval)() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/Request.pm:411
HTML::Mason::Request::exec() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/ApacheHandler.pm:168
HTML::Mason::Request::ApacheHandler::exec() called at /usr/lib/perl5/vendor_perl/5.8.8/HTML/Mason/ApacheHandler.pm:826
HTML::Mason::ApacheHandler::handle_request() called at /opt/rt3/bin/webmux.pl:125
(eval)() called at /opt/rt3/bin/webmux.pl:125
RT::Mason::handler() called at -e:0
(eval)() called at -e:0

Cheers,
David


#2

Michael,

Thanks for the quick response. Are you saying that these stacktraces are not indicative of any issues and that I can ignore them?

Normally I would expect that anything that generated a stacktrace would also require a fix to not generate them!

Cheers,
DavidFrom: “michael brader” michael.brader@youramigo.com
To: “David Hobley” david.hobley@mionegroup.com
Cc: “rt-users” rt-users@lists.bestpractical.com
Sent: Friday, 16 May, 2008 2:54:25 PM GMT +10:00 Brisbane
Subject: Re: [rt-users] Help! Suddenly getting stacktraces

David Hobley writes:

Hello,

We have been running RT for about a year and it has suddenly
started running slowly. Looking at the RT.log file, we are seeing a
whole bunch of stack-traces, for no reason I can ascertain. Anyone
any ideas why these would suddenly start appearing?

Try having a look in etc/RT_SiteConfig.pm for a line like this:

Set( $LogStackTraces , 1 );

and set it to 0 or comment it out.

Cheers,
Michael Brader

Michael Brader michael.brader@youramigo.com

Cheers,
David Hobley

IT Manager
Creators of Miessence, MiVitality and MiEnviron

Phone: +61 (7) 5582 7020
Fax: +61 (7) 5539 6719
USA Fax 1800 840 0827
Email : david.hobley@mionegroup.com
Website: www.mionegroup.com


#3

David Hobley writes:

Michael,

Thanks for the quick response. Are you saying that these
stacktraces are not indicative of any issues and that I can ignore
them?

Well, you should set that variable to 0, because generating the stack
trace will have some overhead (presumably mostly in writing the lines
to the log).

Normally I would expect that anything that generated a stacktrace
would also require a fix to not generate them!

Normally you’d be right, but if it’s LogStackTrace, it’s not a stack
trace generated by Perl, but by RT. From RT.pm:

if( $RT::LogStackTraces ) {
$str .= “\nStack trace:\n”;
# skip calling of the Log::* subroutins
$frame++ while( caller($frame) && (caller($frame))[3] =~ /^Log::confused: );
while( my ($package, $filename, $line, $sub) = caller($frame++) ) {
$str .= “\t”. $sub ."() called at $filename:$line\n";
}
}

Cheers,
Michael

Michael Brader michael.brader@youramigo.com


#4

David Hobley writes:

Hello,

We have been running RT for about a year and it has suddenly
started running slowly. Looking at the RT.log file, we are seeing a
whole bunch of stack-traces, for no reason I can ascertain. Anyone
any ideas why these would suddenly start appearing?

Try having a look in etc/RT_SiteConfig.pm for a line like this:

Set( $LogStackTraces , 1 );

and set it to 0 or comment it out.

Cheers,
Michael Brader

Michael Brader michael.brader@youramigo.com


#5

Michael,

Thanks for that - the problems have been resolved. I would never have guessed that from the variable name.

Cheers,
DavidFrom: “michael brader” michael.brader@youramigo.com
To: “David Hobley” david.hobley@mionegroup.com
Cc: “rt-users” rt-users@lists.bestpractical.com
Sent: Friday, 16 May, 2008 3:23:51 PM (GMT+1000) Auto-Detected
Subject: Re: [rt-users] Help! Suddenly getting stacktraces

David Hobley writes:

Michael,

Thanks for the quick response. Are you saying that these
stacktraces are not indicative of any issues and that I can ignore
them?

Well, you should set that variable to 0, because generating the stack
trace will have some overhead (presumably mostly in writing the lines
to the log).

Normally I would expect that anything that generated a stacktrace
would also require a fix to not generate them!

Normally you’d be right, but if it’s LogStackTrace, it’s not a stack
trace generated by Perl, but by RT. From RT.pm:

if( $RT::LogStackTraces ) {
$str .= “\nStack trace:\n”;

skip calling of the Log::* subroutins

$frame++ while( caller($frame) && (caller($frame))[3] =~ /^Log::confused: );
while( my ($package, $filename, $line, $sub) = caller($frame++) ) {
$str .= “\t”. $sub ."() called at $filename:$line\n";
}
}

Cheers,
Michael

Michael Brader michael.brader@youramigo.com

Cheers,
David Hobley

IT Manager
Creators of Miessence, MiVitality and MiEnviron

Phone: +61 (7) 5582 7020
Fax: +61 (7) 5539 6719
USA Fax 1800 840 0827
Email : david.hobley@mionegroup.com
Website: www.mionegroup.com