in reply to ??Best way to subclass BerkeleyDB

If you work with BerkeleyDB::Btree objects, I think you should subclass that, not BerkeleyDB itself. Then you'd write something along these lines:
package Myapp::BerkeleyDB use warnings; use strict; use BerkeleyDB; use base 'BerkeleyDB::Btree'; sub connect { my ($class, $dbname) = @_ return $class->SUPER::new( -Filename => $dbname, ... ) }

But note that I'm not familiar with BerkeleyDB, and the code is not tested.