I wanted to draw your attention to the following discussion regarding a Perl
segfault that exists across multiple platforms, and across multiple
databases:

http://www.perlmonks.org/index.pl?node_id=404161

The short of it is that I discovered that supplying a pre-prepared statement
handle to selectrow_array() would result in a segfault on the second call to
selectrow_array().  With DBI_TRACE turned on it's easy to see that it occurs
after the second call is re-prepared, just at the moment that the statement
is executed.  I've also determined that this problem occurrs with
selectall_arrayref() and selectrow_arrayref() if called with a pre-prepared
statement handle, and again, the failure is on the second call.  Of course
there is no way to know past the second call, as the segfault is
non-recoverable.

At first I ( and we ) thought that it was strictly related to using
DBD::SQLite, the latest version that is based on the SQLite 3.x engine.  We
thought this because it doesn't fail under DBD::SQLite2, which is based on
the older SQLite 2.x engine.  However, others have confirmed that the
segfault occurs under other databases as well, including MySQL.  We're far
from isolating the issue, but it's starting to look like it may be a DBI
1.45 problem.

If you wish to contact me I can be reached as [EMAIL PROTECTED] , or as
davido on the http://www.perlmonks.org website.

Please let me know if you have any questions.



David Oswald -- [EMAIL PROTECTED]

Reply via email to