Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: 10046/10079 Tracing understanding - SOLVED
Yikes.
So Oracle will always allocate and use a 32K buffer for an output variable defined simply as CHAR?
Thanks for the update.
On 8/4/05, Brian Wisniewski <brian_wisniewski_at_yahoo.com> wrote:
> I finally figured out the problem with the SQL*Net more data to client
> problem. The developer defined output variables as CHAR since he was only
> passing back a single character.
>
> Well the max size of a CHAR field in a procedure is 32K and it's fixed
> length so it was returning the value back to the calling program along with
> another 32000+ spaces to fill it out to the max possible size. And he was
> doing this with 10 fields so that's a mere 320K of spaces sent back to the
> java pgm each and every time this pkg was called! Hence the need for Oracle
> to break that down into manageable pieces to send across the network.
>
> A quick change to VARCHAR2 fixed the issue.
>
-- Paul Baumgartel paul.baumgartel_at_aya.yale.edu -- http://www.freelists.org/webpage/oracle-lReceived on Thu Aug 04 2005 - 11:52:17 CDT
![]() |
![]() |