Stardog Connection.commit()引发java.nio.channels.ClosedChannelException

时间:2014-05-08 20:36:33

标签: java stardog

我正在尝试使用连接池向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社区版。

任何人都可以帮忙吗?谢谢!

2 个答案:

答案 0 :(得分:0)

ChannelClosedException有点像红鲱鱼;如果服务器正在关闭,这就是频道关闭的原因。

为什么不简单地将数据库重新上线而不是重新创建它?每次都会使用相同的数据发生错误吗?

我建议您在Stardog邮件列表上发布此文章,其中包含一个重现该问题的完整示例。

答案 1 :(得分:0)

我正在运行内存数据库,服务器崩溃,因为机器内存不足。