On Feb 8, 2008 2:44 PM, Perrin Harkins <[EMAIL PROTECTED]> wrote: > On Feb 8, 2008 1:43 PM, John Siracusa <[EMAIL PROTECTED]> wrote: > > * Caching of db objects during mod_perl server start-up is now turned > > off by default, with new API to turn it back on and do the necessary > > pre-fork clean-up that this entails. This change solved a > > segmentation > > fault problem triggered in DBD::Informix when database handles created > > in the parent were not properly disconnected prior to the first fork > > of > > the apache process. > > You will probably have to close the handles before forking, or at last > set InactiveDestroy, no matter which database you're using. Even if > you never use those handles again, they will eventually time out and > may break your new handles on the server side when they do. I've seen > this happen in forking code with MySQL handles.
The previous code was just undef-ing the handles, which seemed to work fine for MySQL but caused DBD::Informix to segfault at or near the end of the lifetime for the apache child. (I set MaxRequestPerChild and and MaxClients to 1 to reproduce it without requiring many thousands of requests.) Anyway, the new code is not Informix-specific at all. It applies to all databases. I was just noting the original issue that led to the fix, in case other people with Informix run into it too. -John ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Rose-db-object mailing list Rose-db-object@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rose-db-object