On Mon, Apr 12, 2010 at 12:55:28PM +0200, Jens Rehsack wrote:
> 
> So I did last days when I played around with threads and
> Log::Log4perl::Appender::DBI. I've seen, than (even if in my simply
> example everything works fine), a cloned DBD::File still uses the same
> file handles for reading/writing.
> I talked with Merijn about this situation in #dbi on irc.perl.org and
> we decided, that it would be better, to croak an error when a $dbh is
> used in another thread than the owning one.
> 
> So I started with some hacking this morning to implement that and did

How? Via a CLONE method?

> 'make test' on DBI (as teached by Merijn).
> I got errors from DBD::DBM and after a short analyze I've seen, that
> it derives from DBD::File, but doesn't inherit the entire behavior,
> just a subset.
> This caused DBD::DBM::db::prepare to fail in my tests.
> 
> Now I'm unsure how to step forward. I can hack DBD::File to handle
> those incomplete inheritance by ignoring them, or I can fix DBD::DBM
> to full inherit and modify the behavior it needs to change (instead of
> ignoring parent's methods).
> I would prefer the second way, because I think it's the cleaner one.

It sounds good (but you've not really given enough background information
for someone who's forgotten all he ever knew about DBD::File & DBD::DBM,
like me).

Tim.

Reply via email to