ArcadeDB Studio java.lang.ArrayIndexOutOfBoundsException #1161
Closed
happy-kitty
started this conversation in
General
Replies: 2 comments 6 replies
-
@happy-kitty the only reason I can see is that there is a concurrent event that updates the security/users while you're executing the query. Is the issue reproducible if you run the server as a standalone? |
Beta Was this translation helpful? Give feedback.
1 reply
-
I debugged it a bit and even found a workaround which may help you identify an underlying issue.
This code works - as long as the delay is more than 4 seconds:
|
Beta Was this translation helpful? Give feedback.
5 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Trying "General" discussion as I got no response when asked this question at "Q&A".
Running ArcadeDB 23.6.1 in embedded server mode, the root password is set.
I can successfully log in the ArcadeDB Studio, see schema, server settings, metrics etc. SQL query select from schema:types works fine.
Most/all SQL queries throw ArrayIndexOutOfBoundsException, e.g. select count(*) from AnyOfDefinedTypes where AnyOfDefinedTypes is defined, has one bucket and zero or one records in it. Type inheritance isn't used.
Any idea? I ran into the same thing with 23.5.1 - while 23.4.1 works fine.
Here's the exception stack:
java.lang.ArrayIndexOutOfBoundsException: Index 151 out of bounds for length 1
at com.arcadedb.server.security.ServerSecurityDatabaseUser.requestAccessOnFile(ServerSecurityDatabaseUser.java:83)
at com.arcadedb.database.EmbeddedDatabase.checkPermissionsOnFile(EmbeddedDatabase.java:571)
at com.arcadedb.engine.Bucket.iterator(Bucket.java:245)
at com.arcadedb.query.sql.executor.SelectExecutionPlanner.isEmptyNoSubclasses(SelectExecutionPlanner.java:1480)
at com.arcadedb.query.sql.executor.SelectExecutionPlanner.handleClassAsTargetWithIndex(SelectExecutionPlanner.java:1454)
at com.arcadedb.query.sql.executor.SelectExecutionPlanner.handleClassAsTarget(SelectExecutionPlanner.java:1217)
at com.arcadedb.query.sql.executor.SelectExecutionPlanner.handleClassAsTarget(SelectExecutionPlanner.java:1206)
at com.arcadedb.query.sql.executor.SelectExecutionPlanner.handleFetchFromTarget(SelectExecutionPlanner.java:756)
at com.arcadedb.query.sql.executor.SelectExecutionPlanner.createExecutionPlan(SelectExecutionPlanner.java:143)
at com.arcadedb.query.sql.parser.SelectStatement.createExecutionPlan(SelectStatement.java:212)
at com.arcadedb.query.sql.parser.SelectStatement.execute(SelectStatement.java:206)
at com.arcadedb.query.sql.parser.Statement.execute(Statement.java:73)
at com.arcadedb.query.sql.SQLQueryEngine.command(SQLQueryEngine.java:101)
at com.arcadedb.database.EmbeddedDatabase.command(EmbeddedDatabase.java:1293)
at com.arcadedb.server.ServerDatabase.command(ServerDatabase.java:446)
at com.arcadedb.server.http.handler.PostCommandHandler.executeCommand(PostCommandHandler.java:120)
at com.arcadedb.server.http.handler.PostCommandHandler.execute(PostCommandHandler.java:88)
at com.arcadedb.server.http.handler.DatabaseAbstractHandler.execute(DatabaseAbstractHandler.java:98)
at com.arcadedb.server.http.handler.AbstractHandler.handleRequest(AbstractHandler.java:124)
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:393)
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:859)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
at java.base/java.lang.Thread.run(Thread.java:834)
Beta Was this translation helpful? Give feedback.
All reactions