Sunday 15 June 2014

In h2 db (client/server mode) during high load, 'Lob not found' exception occurs even if blob available -



In h2 db (client/server mode) during high load, 'Lob not found' exception occurs even if blob available -

see trace below

caused by: java.io.ioexception: org.h2.message.dbexception: general error: "java.lang.runtimeexception: lob not found: 12603" [50000-181] @ org.h2.message.dbexception.converttoioexception(dbexception.java:364) @ org.h2.store.lobstorageremoteinputstream.read(lobstorageremoteinputstream.java:73) @ java.io.bufferedinputstream.fill(bufferedinputstream.java:218) @ java.io.bufferedinputstream.read1(bufferedinputstream.java:258) @ java.io.bufferedinputstream.read(bufferedinputstream.java:317) @ java.io.objectinputstream$peekinputstream.read(objectinputstream.java:2265) @ java.io.objectinputstream$peekinputstream.readfully(objectinputstream.java:2278) @ java.io.objectinputstream$blockdatainputstream.readshort(objectinputstream.java:2749) @ java.io.objectinputstream.readstreamheader(objectinputstream.java:779) @ java.io.objectinputstream.<init>(objectinputstream.java:279) @ org.apache.ode.scheduler.simple.jdbcdelegate.dequeueimmediate(jdbcdelegate.java:214) ... 12 more caused by: org.h2.message.dbexception: general error: "java.lang.runtimeexception: lob not found: 12603" [50000-181] @ org.h2.message.dbexception.convert(dbexception.java:283) @ org.h2.engine.sessionremote.done(sessionremote.java:629) @ org.h2.engine.sessionremote.readlob(sessionremote.java:778) @ org.h2.store.lobstorageremoteinputstream.read(lobstorageremoteinputstream.java:71) ... 21 more caused by: org.h2.jdbc.jdbcsqlexception: general error: "java.lang.runtimeexception: lob not found: 12603" [50000-181] @ org.h2.message.dbexception.getjdbcsqlexception(dbexception.java:345) @ org.h2.message.dbexception.get(dbexception.java:168) @ org.h2.message.dbexception.convert(dbexception.java:295) @ org.h2.server.tcpserverthread.senderror(tcpserverthread.java:221) @ org.h2.server.tcpserverthread.run(tcpserverthread.java:161) @ java.lang.thread.run(thread.java:662) caused by: java.lang.runtimeexception: lob not found: 12603 @ org.h2.message.dbexception.throwinternalerror(dbexception.java:242) @ org.h2.store.lobstoragemap.getinputstream(lobstoragemap.java:236) @ org.h2.server.tcpserverthread.process(tcpserverthread.java:454) @ org.h2.server.tcpserverthread.run(tcpserverthread.java:159) ... 1 more

the blob exists. have verified. exception didn't occur after executing set max_length_inplace_lob 2048 (default value 128). assume after setting property higher value, blobs less 2048 size getting stored inline column. prevents exception. explanation why exception occurs in heavy load default value. if blobs stored separate, why h2 fail retrieve them? (assuming cause exception)

blob h2

No comments:

Post a Comment