Hi,
We are using the REST API with BaseX 7.6. After doing approximately 100 PUT requests for creating documents in a database, we get the error listed below. So far
I haven’t been able to reproduce it, but I have the database if that would be any help. Any suggestion on how to un-corrupt the database?
Improper use? Potential bug? Your feedback is welcome:
Contact: basex-talk@mailman.uni-konstanz.de
Version: BaseX 7.6
Java: Oracle Corporation, 1.7.0_25
OS: Windows 7, x86
Stack Trace:
java.lang.RuntimeException: Data Access out of bounds:
- pre value: 0
- #used blocks: 0
- #total locks: 0
- access: -1 (0 > -1]
org.basex.util.Util.notexpected(Util.java:53)
org.basex.io.random.TableDiskAccess.cursor(TableDiskAccess.java:488)
org.basex.io.random.TableDiskAccess.read1(TableDiskAccess.java:189)
org.basex.data.Data.kind(Data.java:283)
org.basex.query.value.node.DBNode.<init>(DBNode.java:49)
org.basex.query.value.seq.DBNodeSeq.get(DBNodeSeq.java:108)
org.basex.query.value.seq.DBNodeSeq.get(DBNodeSeq.java:96)
org.basex.query.QueryResources.compile(QueryResources.java:62)
org.basex.query.QueryContext.compile(QueryContext.java:200)
org.basex.query.QueryProcessor.compile(QueryProcessor.java:66)
org.basex.query.QueryProcessor.execute(QueryProcessor.java:95)
org.basex.query.QueryProcessor.queryNodes(QueryProcessor.java:204)
org.basex.core.cmd.AQuery.queryNodes(AQuery.java:185)
org.basex.core.cmd.Cs.run(Cs.java:23)
org.basex.core.Command.run(Command.java:342)
org.basex.core.Command.exec(Command.java:321)
org.basex.core.Command.execute(Command.java:78)
org.basex.server.LocalSession.execute(LocalSession.java:122)
org.basex.server.Session.execute(Session.java:37)
org.basex.http.rest.RESTCode.open(RESTCode.java:43)
org.basex.http.rest.RESTRetrieve.run(RESTRetrieve.java:41)
org.basex.http.rest.RESTGet.run(RESTGet.java:67)
org.basex.http.rest.RESTServlet.run(RESTServlet.java:14)
org.basex.http.BaseXServlet.service(BaseXServlet.java:39)
javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:648)
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:559)
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:232)
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:194)
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
org.eclipse.jetty.server.Server.handle(Server.java:365)
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:635)
org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:627)
org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:51)
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
java.lang.Thread.run(Unknown Source)
Med venlig hilsen / Kind regards
Lars Iversen
Senior Systems Engineer
Søren Frichs Vej 39, 8000 Aarhus C
Denmark
Mobile: +45 4196 5164
Lars.Iversen@systematic.com
www.systematic.com