Here is what the Oracle utility oerr returns for 1062 code:
01062, 00000, "unable to allocate memory for define buffer"
// *Cause: Exceeded the maximum buffer size for current plaform
// *Action: Use piecewise fetch with a smaller buffer size
// *Action: Use a client application linked with V8 (or higher)
libraries.60
Regards,
Ellen Yu
On Wed, 13 Nov 2002, Jibo John wrote:
> 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
>
>
>
>