in reply to DBI seems to randomly die

Wow ... that's hairy. I would start by setting the RaiseError attribute on and wrapping all the DBI calls in an eval. If that didn't provide any useful info then I would set Tracing on (all of this is documented in DBI.

-derby