Now for every exported function we have pair of functions that accepts pool_name and old one, which is just wrapper:
---- DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open_pool(apr_pool_t *pool, server_rec *s, const char *pool_name); DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open(apr_pool_t *pool, server_rec *s); APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_open_pool, (apr_pool_t*, server_rec*, const char*)); APR_DECLARE_OPTIONAL_FN(ap_dbd_t*, ap_dbd_open, (apr_pool_t*, server_rec*)); ---- DBD_DECLARE_NONSTD(ap_dbd_t*) ap_dbd_open(apr_pool_t *pool, server_rec *s) { return ap_dbd_open_pool(pool, s, DBD_DEFAULT_POOL_NAME); } In httpd.conf you can create named pool inside <DBDPool pool_name> or without. In second case pool_name is DBD_DEFAULT_POOL_NAME. Thus old functions and old configuration is preserved. What so you think? Patch is ready, but it needs some testing before posting.