I want to build a mod_perl2 application using Sleepycat::DbXml. This is the Perl bindings to the C++ interface to Berkeley DB and Berkeley DB XML, developed by Sleepycat, now owned by Oracle (keywords: DbEnv, XmlManager, XmlContainer).
Has anyone ever used this combination? Note I'm using Apache 2.2 with the worker MPM and a suitably configured Perl (perl -V:useithreads -V:usemultiplicity). I want to open the environment and the XML container (the database) during initialization so this doesn't have to be done anew on each request. However, I don't know how to do this. Currently, I'm trying to set up things in startup.pl (loaded via PerlPostConfigRequire), store the database environment handle in a global package variable, and access that from the PerlContentHandler. (1) Is that okay in principle? (2) As I'm getting unfriendly SEGVs: Has anyone any experience on using mod_perl2 with Sleepycat::Db or Sleepycat::DbXml? If so, I can provide more details on this. Michael Ludwig