Folks,

I am running into a problem here:

My script is running on:

Solaris SunOS 5.8 Generic_108528-15 sun4u sparc SUNW,Ultra-Enterprise
Perl 5.6.1
DBI 1.18
DBD::Oracle 1.07


It gives the following error while preparing a select query:
DBD::Oracle::db prepare failed: ORA-01062: unable to allocate memory for define buffer (DBD ERROR: OCIDefineByPos) at script.pl line 159.

Here is the code snippet:
print $stmt2;
eval{
$csr2 = $dbh_prod->prepare($stmt2);
};
if($@){
$dbh_prod->trace(6);
die "prepare failed : $DBI::errstr\n"
}

A 'select count(*)' of the same query $stmt2 runs without any issues.

Here is the Oracle trace 6 output:

DBI::db=HASH(0x208b10) trace level set to 6 in DBI 1.18-nothread
Note: perl is running without the recommended perl -w option
-> $DBI::errstr (&) FETCH from lasth=DBI::db=HASH(0x208b10)
prepare failed : ORA-01062: unable to allocate memory for define buffer (DBD ERROR: OCIDefineByPos)
-> DESTROY for DBD::Oracle::db (DBI::db=HASH(0x208b10)~INNER)
Issuing rollback() for database handle being DESTROY'd without explicit disconnect() during global destruction.
OCITransRollback(22d0e4,22d30c,0)=SUCCESS
OCISessionEnd(22d0e4,22d30c,239724,0)=SUCCESS
OCIServerDetach(22d150,22d30c,0)=SUCCESS
OCIHandleFree(239724,9)=SUCCESS
OCIHandleFree(22d150,8)=SUCCESS
OCIHandleFree(22d0e4,3)=SUCCESS
OCIHandleFree(22d30c,2)=SUCCESS
<- DESTROY= undef during global destruction.


Any help regarding this is highly appreciated.

Thanks,
-Jibo



Reply via email to