Re: intermittent ORA-1480 with proc++ code

From: Carlos <miotromailcarlos_at_netscape.net>
Date: 21 Dec 2006 10:57:00 -0800
Message-ID: <1166727420.824050.227430_at_f1g2000cwa.googlegroups.com>


v.r.sankar_at_gmail.com ha escrito:

> Jim Smith wrote:
> > >select Column1 into :dbColValue:dbColValueInd from Table1;
> >
> > What is the definition of Column1?
> > If it can contain 10 characters, then there would be no room in
> > dbColValue for the 0x00 string terminator.
> >
> > --
> > Jim Smith
> > Ponder Stibbons Limited <http://oracleandting.blogspot.com/>
> > RSS <http://oracleandting.blogspot.com/atom.xml>
>
> Column1 is 9 characters in length. VARCHAR2(9).
> Wherever dbColValue is referenced the column value is of same
> signature. These columns are infact representing the same data entity
> but in different tables.
>
> My guess is that strcy(oracle_char_var,RWCString) is not working
> properly.
> Both are structures and not char *. I am not sure if the implicit cast
> is working properly.
> Also, I am not sure if it is the best way to copy the information. Unit
> testing this part alone produced proper results without any anomalies.
>
> The frustrating part is that it is intermittent and hence finding it
> extremely hard to replicate. Any ideas for replication are also
> appreciated.
>
> Do you see any memory leakage problems with the code?

>>"Column1 is 9 characters in length. VARCHAR2(9)."
[Quoted] Wrong. Column1 is 9 BYTES length. Depending on the characterset you can find strings with 9 letters which are longer than 9 bytes! Try DUMP() function.

HTH. Cheers.

Carlos. Received on Thu Dec 21 2006 - 19:57:00 CET

Original text of this message