Rt/mysql crashes

Greetings,

I’m running rt 3.0.2pre6 (apache+mod_perl) and mysql 4.0.13, both on
openbsd 3.2.

After clicking through the web interface for several minutes, rt
would become unable to generate pages, and would log the following error:

[Mon May 26 23:46:31 2003] [warning]:
DBI->connect(dbname=rt3;host=x.x.x.x;port=3306) failed: Too many
connections at
/usr/local/libdata/perl5/site_perl/DBIx/SearchBuilder/Handle.pm line 119
(/usr/local/rt/lib/RT.pm:226)

Restarting apache would clear up the connections, but then (after the
httpd restart) the mysql process would begin to spin out of control:

PID USERNAME PRI NICE SIZE RES STATE WAIT TIME CPU COMMAND
1921 mysql 64 0 62M 21M run - 1:51 99.02% mysqld

I found the following threads which seem to describe the same problem:

http://lists.fsck.com/pipermail/rt-devel/2002-October/002581.html
http://lists.fsck.com/pipermail/rt-devel/2002-November/002773.html

After adding Stanislav Sinyagin’s recommended DESTROY() subroutine to
SearchBuilder 0.82’s Handle.pm, rt/apache no longer leave open stale
database connections (which were eventually reaching the mysql default max
value of 100 – then resulting in the crashes).

It’s too soon to tell whether any new problems have cropped up since the
addition, but I’m keeping an eye out.

It’s hard to tell what conditions must be met to trigger this bug, but
between the threads above and my experience, it’s occurred on at least
openbsd, freebsd, and debian linux with varying software versions.

Jesse & team, what are your thoughts?

Regards,

  • Adam