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