0

我正在尝试使用连接池将语句添加到 stardog 连接。出于某种原因,在数据摄取进行到一半时,我在尝试提交时收到了 ClosedChannelConnectionException。

// This all runs in a loop
while ... {
  def conn = connPool.obtain()
  conn.begin()

  // Add some statements here
  conn.add()...

  conn.commit() // This line throws the exception

  connPool.release(conn)
}

例外是:

com.complexible.stardog.StardogException: java.nio.channels.ClosedChannelException

异常发生后,stardog 服务器崩溃,但日志中没有错误。当我重新启动服务器时,我使用的数据库处于脱机状态,我必须重新创建它才能使用它。

我正在使用 Stardog 2.1 社区版。

有人能帮忙吗?谢谢!

4

2 回答 2

0

ChannelClosedException有点像红鲱鱼。如果服务器出现故障,这就是通道关闭的原因。

为什么不简单地使数据库重新联机而不是重新创建它呢?错误是否每次都发生在相同的数据上?

我建议您在 Stardog 邮件列表上发布此内容,并附上重现该问题的完整示例。

于 2014-05-09T11:55:31.990 回答
0

我正在运行一个内存数据库,但由于机器内存不足,服务器崩溃了。

于 2014-05-09T20:28:29.947 回答