Informix - Problem description
Problem IT18982 | Status: Closed |
JAVA UDR THAT DELETES/INSERTS/SELECT AND RETURNS CLOB CAN CAUSE OOM 'OUTOFMEMORY' ERRORS RUNNING ON JVP AND CRASH SERVER | |
product: | |
INFORMIX SERVER / 5725A3900 / C10 - IDS 12.10 | |
Problem description: | |
A Java UDR that deletes, inserts and selects a CLOB can cause out of memory errors running on a JVP and crash the server with the following stacks that vary: (oninit)afstack (oninit)afhandler (oninit)affail_interface (oninit)mt_jvp_abort (oninit)yield_processor_mvp (oninit)idle_processor (oninit)startup (oninit)afstack (oninit)afhandler (oninit)affail_interface (oninit)mt_ex_throw_sig@AF11_4 (oninit)afsig_handler (*nosymtab*)0x900000000514f14 (*nosymtab*)0x300000003 (*nosymtab*)0x900000000514768 (*nosymtab*)0x90000000003946c (*nosymtab*)0x900000000055ae8 (*nosymtab*)0x9000000336a69cc (*nosymtab*)0x90000003374ddd0 (*nosymtab*)0x900000033753658 (*nosymtab*)0x90000003367dce0 (*nosymtab*)0x9000000337535a8 (*nosymtab*)0x9000000337531d0 (*nosymtab*)0x9000000337760fc (*nosymtab*)0x9000000337766c8 (*nosymtab*)0x9000000336762f8 (*nosymtab*)0x9000000335a01d8 (*nosymtab*)0x90000003359fc50 (*nosymtab*)0x9000000343488cc (*nosymtab*)0x90000003362b234 (*nosymtab*)0x90000003a437fc8 (*nosymtab*)0x110f94f60 (*nosymtab*)0x9000000335b02a8 (*nosymtab*)0x9000000335d18ac (*nosymtab*)0x90000003367dce0 (*nosymtab*)0x9000000335d19dc (*nosymtab*)0x9000000335b09fc (*nosymtab*)0x9000000335b74f0 (*nosymtab*)0x90000003a3dc9d8 (*nosymtab*)0x90000003a3e2bd8 (*nosymtab*)0x90000003a3e2b80 ---- (*nosymtab*)0x90000003a3e2ec8 (*nosymtab*)0x90000003a3dcb9c (oninit)udrlm_context_open (oninit)udr_openseq (oninit)udr_init_sequence_handle (oninit)routine_prep_node (oninit)common_routine2expr (oninit)expr2expr (oninit)exec2cb (oninit)stmt2cb (oninit)p_sp2cb (oninit)IPRA.$parsecmd (oninit)IPRA.$sqcmd (oninit)sq_cmnd (oninit)sq_prepare (oninit)sqmain (oninit)listen_verify (oninit)spawn_thread (oninit)th_init_initgls (oninit)startup In the jvp.log, you might see OOM stacks like java.lang.OutOfMemoryError: Java heap space at informix.jvp.dbapplet.impl.UDRLMInfo.getSignature(Native Method) at informix.jvp.dbapplet.impl.SQLJParamImpl.(SQLJParamImpl.ja va:624) at informix.jvp.dbapplet.impl.PerJavaUDRContext.initDBApplet(PerJav aUDRContext.java:223) at informix.jvp.dbapplet.impl.PerJavaUDRContext.invokeUDR(PerJavaUD RContext.java:241) at informix.jvp.dbapplet.impl.DBAThreadImpl.runDBApplet(DBAThreadIm pl.java:481) at informix.jvp.dbapplet.impl.DBAThreadImpl.runDBWork(DBAThreadImpl .java:378) at informix.jvp.dbapplet.impl.DBAThreadImpl.run(DBAThreadImpl.java: 326) java.lang.OutOfMemoryError: Java heap space at java.lang.StringBuilder.ensureCapacityImpl(StringBuilder.java:34 2) at java.lang.StringBuilder.append(StringBuilder.java:135) at informix.jvp.impl.TraceStreamImpl.println(TraceStreamImpl.java:2 54) at informix.jvp.impl.TraceableImpl.tracePrint(TraceableImpl.java:28 0) at com.informix.jdbc.IfxDirectConnection.getclLocale(IfxDirectConne ction.java:133) at com.informix.jdbc.IfxSQLInput.(IfxSQLInput.java:93) at com.informix.jdbc.IfxUDTInput.(IfxUDTInput.java:54) at com.informix.jdbc.IfxUDT.fromBytes(IfxUDT.java:165) at com.informix.jdbc.IfxSmartBlob.IfxLoSize(IfxSmartBlob.java:780) at com.informix.jdbc.IfxSmBlob.getSize(IfxSmBlob.java:208) at com.informix.jdbc.IfxSmBlob.toClob(IfxSmBlob.java:1160) at com.informix.jdbc.IfxSmBlob.toClob(IfxSmBlob.java:1150) at com.informix.jdbc.IfxResultSet.getClob(IfxResultSet.java:3399) at getpmrtext.getpmrtext(getpmrtext.java:118) at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod AccessorImpl.java:55) at java.lang.reflect.Method.invoke(Method.java:619) at informix.jvp.dbapplet.impl.SQLJParamImpl.invoke(SQLJParamImpl.ja va:960) at informix.jvp.dbapplet.impl.PerJavaUDRContext.invokeUDR(PerJavaUD RContext.java:249) at informix.jvp.dbapplet.impl.DBAThreadImpl.runDBApplet(DBAThreadIm pl.java:481) at informix.jvp.dbapplet.impl.DBAThreadImpl.runDBWork(DBAThreadImpl .java:378) at informix.jvp.dbapplet.impl.DBAThreadImpl.run(DBAThreadImpl.java: 326) | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Informix Java UDR with CLOB * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Update to IBM Informix Server 12.10.xC9 * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 25.01.2017 10.07.2017 10.07.2017 |
Problem solved at the following versions (IBM BugInfos) | |
12.10.xC9 | |
Problem solved according to the fixlist(s) of the following version(s) |