On Mon, Feb 16, 2004 at 02:25:18PM -0800, Dean Arnold wrote: > I've managed to answer at least 1 of my own questions: > > > Questions: > > 1. I have retained the internal err(), errstr(), and state() > > methods in the DBD::XXX::db and DBD::XXX::st packages; > > should these be removed ? Are they being called by the DBI > > layer and possibly causing the issue ? > > Answer is yes, remove them, (or at least alter them > to invoke the SUPER:: ?)
Remove them (unless you think there's a very good reason not to, in which case we can talk about it). > > 2. Does the DBD still need to provide the Err, Errstr, and State > > attributes to the driver attribute hash ? No, they should also be removed. > > 3. In reviewing the docs, in DBI.pm, set_err() is described > > as a handle method ie, $h->set_err(). But in the DBD.pm, > > the examples use $h->DBI::set_err(). Which is correct ? > > Both seemed to work, at least as far as setting the values... Both work. Using $h->DBI::set_err() bypasses DBI method dispatch (and would bypass any driver subclass - but we don't do driver subclassing yet anyway). $h->set_err() is recommended. You've reminded me to fix all those in the DBI distribution, which I've just done. Thanks. > After resolving item (1) above, things now behave as expected, It's nice when problems are resolved by removing code :) Tim.
