H2:JdbcSQLException:此CLOB或BLOB引用超时

时间:2016-10-13 17:56:04

标签: java jdbc h2

在java中使用h2(调用getBytes函数)我收到以下错误。谷歌没有让我到任何地方。我想知道是否有人有线索发生了什么。

Caused by: org.h2.jdbc.JdbcSQLException: This CLOB or BLOB reference timed out: "533668/-3" [90039-190]
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
    at org.h2.message.DbException.get(DbException.java:179)
    at org.h2.message.DbException.get(DbException.java:155)
    at org.h2.store.LobStorageMap.getInputStream(LobStorageMap.java:287)
    at org.h2.value.ValueLobDb.getInputStream(ValueLobDb.java:384)
    at org.h2.value.ValueLobDb.getBytesNoCopy(ValueLobDb.java:318)
    at org.h2.value.ValueLobDb.getBytes(ValueLobDb.java:304)
    at org.h2.jdbc.JdbcResultSet.getBytes(JdbcResultSet.java:1059)
    at edu.illinois.cs.cogcomp.srl.caches.SentenceDBHandler$1.next(SentenceDBHandler.java:214)

1 个答案:

答案 0 :(得分:0)

例如,如果您有一个长时间运行的事务,则可能会出现此错误消息。您可以通过在数据库连接上设置LOB_TIMEOUT属性来增加超时。

  

数据库设置LOB_TIMEOUT(默认值:300000,表示5分钟)。   临时LOB引用保留的毫秒数,直到超时为止。超时后,将无法使用此引用来访问LOB。

https://www.h2database.com/javadoc/org/h2/engine/DbSettings.html#LOB_TIMEOUT