I have a program unit which uses dbms_output.put_line to output a string with a length of e.g. 32520.

When run from at test script, this causes PLD to generate an ORA-06502: PL/SQL: numeric or value error: character string buffer too small.

Running PLD with the parameter debugsql, I can see that the method sys.dbms_output.get_lines(lines => Lines, numlines => :NumLines) is called to get the output. The resulting array (Lines) is saved in a string variable :Line0 := Lines(1) which seems to be defined too small (32512). Please check that the string variables :Line0 to :Line9 are defined as strings which can hold an Oracle Varchar2 of length 32767.

I have checked in the debugger that dbms_output.put_line can be called with strings up to 32767 in length without error, it is when PLD starts to retreive the data, the error appears.

This is also a problem in beta 6
We'll fix it.
Bump: what is ETA for this fix?
It's a bit of a low-level issue, so his may need to wait until version 11.0.
© Allround Automations forums