openrdf-workbench 在尝试清除 repo 时给出服务器错误

openrdf-workbench gives server error when trying to clear repo

发行版:Centos-6.3
TomcatV6
打开 Rdf V-2.8.10

我在 Openrdf 中有一个相当大的存储库。上传的三重文件差不多1G,超时看不到workbench里面的语句数。我想清除存储库,但出现 500 错误。

根本原因

org.openrdf.repository.RepositoryException:org.openrdf.repository.RepositoryException:ID 为 2dd1518b-3060-49ff-a34b-09cf27346fd0 的交易未注册。 org.openrdf.repository.http.HTTPRepositoryConnection.rollback(HTTPRepositoryConnection.java:369) org.openrdf.repository.http.HTTPRepositoryConnection.close(HTTPRepositoryConnection.java:385) org.openrdf.workbench.commands.RemoveServlet.doPost(RemoveServlet.java:69) org.openrdf.workbench.base.TransformationServlet.service(TransformationServlet.java:106) org.openrdf.workbench.base.BaseServlet.service(BaseServlet.java:141) org.openrdf.workbench.proxy.ProxyRepositoryServlet.service(ProxyRepositoryServlet.java:104) org.openrdf.workbench.proxy.WorkbenchServlet.service(WorkbenchServlet.java:222) org.openrdf.workbench.proxy.WorkbenchServlet.handleRequest(WorkbenchServlet.java:151) org.openrdf.workbench.proxy.WorkbenchServlet.service(WorkbenchServlet.java:119) org.openrdf.workbench.proxy.WorkbenchGateway.service(WorkbenchGateway.java:131) org.openrdf.workbench.base.BaseServlet.service(BaseServlet.java:141) org.openrdf.workbench.proxy.CacheFilter.doFilter(CacheFilter.java:75) org.openrdf.workbench.proxy.CookieCacheControlFilter.doFilter(CookieCacheControlFilter.java:63)

我怀疑 tomcat 超时或 workbench 超时。有人知道我在哪里可以设置超时限制吗?

是在/tomcat6/webapps/host-manager/WEB-INF下的web.xml还是 /tomcat6/webapps/manager/WEB_INF/ 或 /tomcat6/webapps/openrdf-sesame/WEB-INF 或 /tomcat6/webapps/openrdf-workbench ?或者可能是所列的 none。 我应该在文件中放什么? 我希望有人能指导我正确的方向。

这是 Sesame 2.8.10 或更高版本中的一个已知问题,请参阅 https://github.com/eclipse/rdf4j/issues/91。正在修复。目前仅有的两个解决方法是:

  1. 删除然后重新创建存储库;
  2. sesame.server.txn.registry.timeout 系统参数设置为更高的超时值(默认值为 60 秒)。