Short note this time. Got errors (ora-03114 / ora-03113)  while running any dbms_java script on a 10.2.0.2 database. Took a while, but then I found out it only happens when I’m connected  through sql*net.  Directly on the server gave no problem at all. And… it only occurs in my test-environment, not in development, and not in production.

What is different in my test-environment? Ahh…., on that node there are two different versions of the database installed, a 10.2.0.3 and a 10.2.0.2. And.. only one listener, from the 10.2.0.3 – software tree.

Stopped the listener of the 10.2.0.3, and started the listener of the 10.2.0.2 (after configuring), and it worked again! The only thing is now that the other database has the problem of the dbms_java..   Configured two listeners, one at port 1521, the other on 1526, reconfigured tnsnames on the application server,  problem solved.

The cause of this failure? I think it has to do with environment-variables, but I was too lazy to dig thoroughly, so any suggestions are welcome.

For the record, the test script I used (it does nothing here, deleted a line with a call to a java program);

set serveroutput on
declare
l_output dbms_output.chararr;
l_lines number;
begin
dbms_output.enable(1000000);
dbms_java.set_output(1000000);
dbms_output.get_lines(l_output, l_lines);
for i in 1 .. l_lines loop
dbms_output.put_line(l_output(i));
end loop;
end;
/

Result:

SQL>@test_java
ERROR:
ORA-03114: not connected to ORACLE

declare
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel

m4s0n501