Re: heap corruption in DBD::Oracle
- From: hjp@xxxxxxxxx (Peter J. Holzer)
- Date: Sun, 16 Dec 2007 23:41:40 +0100
On 2007-12-16 23:07:36 +0100, Peter J. Holzer wrote:
I have a perl script which updates some (large) tables from text-files,^^^^^^^^^^
inserting, updating and deleting records. For performance reasons the
inserts, updates and deletes are queued together and then done with an
array operation when there are "enough". Now I've added another table
and the script dies with:
*** glibc detected *** double free or corruption (fasttop): 0x0000000001450ad0 ***
in ora_execute_array (called from line 854 in Oracle.pm)
The relevant part of the script looks like this:
sub insert {
my ($self, $inserts) = @_;
my $dal = $self->{_dal};
my $sth_insert_data = $dal->{_dbh}->prepare_cached("insert into data(id, real) values(?, ?)");
my $sth_insert_datacoord =
$dal->{_dbh}->prepare_cached(
"insert into datacoords(period_start, period_end, data_id, set_id)
values(?, ?, ?, ? )"
);
my $sth_insert_fact_comext =
$dal->{_dbh}->prepare_cached(
"insert into fact_comext(period_start, reporter, partner, product, data_id, real)
values(?, ?, ?, ?, ? ? )"
Oops. I just noticed the missing comma here. I don't know if this was
the cause (I changed the execute_array to a plain execute in a loop,
when I noticed it and the script is still running), but that's certainly
a possibility.
hp
--
_ | Peter J. Holzer | If I wanted to be "academically correct",
|_|_) | Sysadmin WSR | I'd be programming in Java.
| | | hjp@xxxxxxxxx | I don't, and I'm not.
__/ | http://www.hjp.at/ | -- Jesse Erlbaum on dbi-users
Attachment:
pgpzzyaDflUix.pgp
Description: PGP signature
- References:
- heap corruption in DBD::Oracle
- From: Peter J. Holzer
- heap corruption in DBD::Oracle
- Prev by Date: heap corruption in DBD::Oracle
- Next by Date: ORA-01406 from a perl script using DBI package
- Previous by thread: heap corruption in DBD::Oracle
- Next by thread: ORA-01406 from a perl script using DBI package
- Index(es):
Relevant Pages
|