I believe I am fairly close to complete an alpha release. It is so
close that I can taste it, and I really want this bad - or I never would
have started this driver on my own.
Mostly it borrows fairly closely the template in DBD.pm with
additional guidance pulled from
BDB::File, DBD:CSV, and DBD:Excel.
For debugging purposes I have exported some DF test Databases to
..CSV files and I run a test program against both the DBD:DF
implementation and the DBD:CSV implementation. I can then run create
traces and/or use Data::Dumper to dump out structures in CSV.pm and
DF.pm and compare them.
Everything is working fine all the way through execute. The traces
are identical - except the very few minor places where they should be
different.
I Have dumped out assorted data structures along the way, in
particular the $dbh and $sth at various progress points, and as I have
deliberately tried to keep things the same, they are identical -
I can run diff against them and a match.
When I start trying to pull the Data that has already be
successfully extracted from the database, into my test program using
fetchrow_arrayref, Everything dies instantly. The $sth passed to
fetchrow_arrayref does not appear to be a hashref anymore but the string
value "1".
It was fine at the very end of execute and the very next thing done
is to start looping through fetchrow_arrayref.
It appears to me that somewhere either returning through DBI after
execute or passing through DBI into fetchrow_arrayref, I have something
wrong that is provoking DBI to stomp on $sth.
I have tried to digest the innards of DBI.pm, but it is way beyond
my current Perl skills.
I can provide code, test code, traces comparative data structures
dumps, but I suspect it would be bad etiquette to dump all that on this
list.
Mostly I am just looking for a clue where else I can try to look to
see what is happening,
But if someone is willing to help I can give them whatever
additional information they might want.