I have written a handler that calls a constructor to a module that I
have written. I do not believe that the subsequent destructor is
being called unless I explicitly call it. Is this a feature of
mod_perl? I would think that every time an instance of the module is
created, it would be destroyed properly when using mod_perl.

The reason I am doing this, is that I am testing to see if I want to
continue using Apache:BI. I have 4 databases that need to be
connected to, and I end up having alot of MySQL threads hanging out if
I use Apache:BI. The problem comes in that I have all disconnects
in the DESTROY method for the module(all of my database interaction is
abstracted using an OO module) and I end up having no difference
between Apache:BI and using only DBI (threads stay persistent)
unless I call destroy explicitly from the handler ( $db->DESTROY ).

sub DESTROY {
my $self = shift;

$self->dbh->disconnect() if defined $self->dbh;
}