[
https://issues.apache.org/jira/browse/TINKERPOP-2504?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17314909#comment-17314909
]
Marc de Lignie commented on TINKERPOP-2504:
-------------------------------------------
OK, I can contribute in investigating this issue. First, I asked myself why
failures are more common on Travis, so I added a docker command line option
--cpus={color:#008000}".9"{color}{color:#172b4d} to the docker/build.sh.
Without Stephen's thread.sleep(), this has a "docker/build.sh -t" fail
consistently in the gremlin groovy module (see two example stack traces below),
while it runs fine with my four available CPU cores. I will move over to the
Krb5Authenticator part and try and give it the same treat. I leave gremlin
groovy to you.{color}
Example 1
[ERROR] Tests run: 3, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 17.613
s <<< FAILURE! - in
org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutorOverGraphTest
[ERROR]
shouldAllowTraversalToIterateInDifferentThreadThanOriginallyEvaluatedWithAutoCommit(org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutorOverGraphTest)
Time elapsed: 9.827 s <<< ERROR!
java.util.concurrent.CompletionException:
java.util.concurrent.TimeoutException: Evaluation exceeded the configured
'evaluationTimeout' threshold of 8000 ms or evaluation was otherwise cancelled
directly for request [g.V().out()]
at
java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:331)
at
java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:346)
at
java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:704)
at
java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:506)
at
java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2088)
at
org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$1(GremlinExecutor.java:320)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.concurrent.TimeoutException: Evaluation exceeded the
configured 'evaluationTimeout' threshold of 8000 ms or evaluation was otherwise
cancelled directly for request [g.V().out()]
at
org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$1(GremlinExecutor.java:321)
... 6 more
Example 2
[ERROR] Tests run: 37, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 68.996
s <<< FAILURE! - in
org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutorTest
[ERROR]
shouldEvalScriptWithBindings(org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutorTest)
Time elapsed: 8.893 s <<< ERROR!
java.util.concurrent.ExecutionException: java.util.concurrent.TimeoutException:
Evaluation exceeded the configured 'evaluationTimeout' threshold of 8000 ms or
evaluation was otherwise cancelled directly for request [1+x]
at
java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:395)
at
java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1999)
at
org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutorTest.shouldEvalScriptWithBindings(GremlinExecutorTest.java:170)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at
org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
at
org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345)
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418)
Caused by: java.util.concurrent.TimeoutException: Evaluation exceeded the
configured 'evaluationTimeout' threshold of 8000 ms or evaluation was otherwise
cancelled directly for request [1+x]
at
org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$1(GremlinExecutor.java:321)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
> Intermittently failing server/driver integration tests
> ------------------------------------------------------
>
> Key: TINKERPOP-2504
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2504
> Project: TinkerPop
> Issue Type: Improvement
> Components: driver, server
> Affects Versions: 3.4.9
> Reporter: Stephen Mallette
> Priority: Minor
>
> I've noticed this test failing intermittently on Travis and more consistently
> on the {{master}} branch with Docker. It fails with a
> {{ConcurrentModificationException}} (haven't been able to easily get the
> entire stack trace thanks to the docker issue and i've not caught it
> happening in the last few days on Travis). Adding this line of code seems to
> have made the test pass more consistently:
> https://github.com/apache/tinkerpop/commit/4b099b3c84a350aae953cdf517aa11c7017eb2ae
> which would indicate something perhaps fishy with how hosts are being marked
> dead and iterated. Would be nice to get rid of that little hack.
> Another common failure that is fairly consistent is with
> {{GremlinServerAuditLogIntegrateTest.shouldAuditLogWithKrb5Authenticator}}
> {code}
> [ERROR]
> shouldAuditLogWithKrb5Authenticator(org.apache.tinkerpop.gremlin.server.GremlinServerAuditLogIntegrateTest)
> Time elapsed: 3.16 s <<< ERROR!
> java.util.concurrent.ExecutionException:
> org.apache.tinkerpop.gremlin.driver.exception.ResponseException:
> Authenticator is not ready to handle requests
> at
> org.apache.tinkerpop.gremlin.server.GremlinServerAuditLogIntegrateTest.shouldAuditLogWithKrb5Authenticator(GremlinServerAuditLogIntegrateTest.java:222)
> Caused by: org.apache.tinkerpop.gremlin.driver.exception.ResponseException:
> Authenticator is not ready to handle requests
> {code}
> cc/ [~divijvaidya] [~HadoopMarc]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)