Stack Traces in 1.5.x+

Starting with 1.5, when there is an exception thrown from cypher execution, the stack trace that is thrown is the stack trace is from the async thread actually performing the execution.

The exception message is correct, but the stack trace is fairly useless in terms of figuring out where in one's code the exception is originating. That is, the stack trace is 100% neo4j-java-driver code. It makes each exception into a bit of a whodunnit.

Is there an option/switch to revert to the previous behavior?

Hi Rob,

can you share the stacktrace? Then we can point our drivers team to it? Thx.

code:

public static void main(String [] args) {
    GraphDatabase.driver("bolt://localhost:7687").session().run("match (a:Foo) refurn a limit 1").consume();
}

with 1.4.x stack trace looks like:

Exception in thread "main" org.neo4j.driver.v1.exceptions.ClientException: Invalid input 'f': expected 'm/M', 'l/L' or 't/T' (line 1, column 17 (offset: 16))
"match (a:Foo) refurn a limit 1"
                 ^
	at org.neo4j.driver.internal.net.SocketResponseHandler.handleFailureMessage(SocketResponseHandler.java:76)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$Reader.unpackFailureMessage(PackStreamMessageFormatV1.java:470)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$Reader.read(PackStreamMessageFormatV1.java:431)
	at org.neo4j.driver.internal.net.SocketClient.receiveOne(SocketClient.java:196)
	at org.neo4j.driver.internal.net.SocketConnection.receiveOne(SocketConnection.java:217)
	at org.neo4j.driver.internal.net.ConcurrencyGuardingConnection.receiveOne(ConcurrencyGuardingConnection.java:165)
	at org.neo4j.driver.internal.net.pooling.PooledSocketConnection.receiveOne(PooledSocketConnection.java:183)
	at org.neo4j.driver.internal.InternalStatementResult.receiveOne(InternalStatementResult.java:335)
	at org.neo4j.driver.internal.InternalStatementResult.consume(InternalStatementResult.java:291)
	at rebar.graph.core.Demo.main(Demo.java:9)

With 1.5+ it looks like:

Exception in thread "main" org.neo4j.driver.v1.exceptions.ClientException: Invalid input 'f': expected 'm/M', 'l/L' or 't/T' (line 1, column 17 (offset: 16))
"match (a:Foo) refurn a limit 1"
                 ^
	at org.neo4j.driver.internal.util.ErrorUtil.newNeo4jError(ErrorUtil.java:62)
	at org.neo4j.driver.internal.async.inbound.InboundMessageDispatcher.handleFailureMessage(InboundMessageDispatcher.java:142)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$ReaderV1.unpackFailureMessage(PackStreamMessageFormatV1.java:337)
	at org.neo4j.driver.internal.messaging.PackStreamMessageFormatV1$ReaderV1.read(PackStreamMessageFormatV1.java:301)
	at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:83)
	at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:35)
	at org.neo4j.driver.internal.shaded.io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
	at org.neo4j.driver.internal.async.inbound.MessageDecoder.channelRead(MessageDecoder.java:40)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:297)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:413)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.neo4j.driver.internal.shaded.io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1389)
	at org.neo4j.driver.internal.shaded.io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1159)
	at org.neo4j.driver.internal.shaded.io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1203)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:489)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:428)
	at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
	at org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1414)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
	at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
	at org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:945)
	at org.neo4j.driver.internal.shaded.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:146)
	at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:645)
	at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580)
	at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497)
	at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459)
	at org.neo4j.driver.internal.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886)
	at org.neo4j.driver.internal.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.lang.Thread.run(Thread.java:748)

You can see how the 1.5/1.6 stack trace is not very useful in actually tracking down the problem.

This was fixed in 1.7.0

1 Like

Hi,
I have encounter a similar behavior in the retry mechanism: at org.neo4j.driver.internal.retry.ExponentialBackoffRetryLogic#retryWorkInEventLoop

there is a WARN log with entire stack-trace that seems redundant to the driver's users.

version: 1.7.5

 11:37:58.552 WARN [o4jDriverIO-2-1] RetryLogic Async transaction failed and is scheduled to retry in 1027ms org.neo4j.driver.v1.exceptions.TransientException: ForsetiClient[4] can't acquire ExclusiveLock{owner=ForsetiClient[0]} on NODE(66), because holders of that lock are waiting for ForsetiClient[4]. Wait list:ExclusiveLock[ Client[0] waits for [4]] at org.neo4j.driver.internal.util.ErrorUtil.newNeo4jError(ErrorUtil.java:70) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageDispatcher.handleFailureMessage(InboundMessageDispatcher.java:105) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.messaging.v1.MessageReaderV1.unpackFailureMessage(MessageReaderV1.java:83) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.messaging.v1.MessageReaderV1.read(MessageReaderV1.java:59) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:83) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:35) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.MessageDecoder.channelRead(MessageDecoder.java:47) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:297) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:413) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1414) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:945) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:146) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:645) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242] Suppressed: java.util.concurrent.CompletionException: org.neo4j.driver.v1.exceptions.TransientException: ForsetiClient[4] can't acquire ExclusiveLock{owner=ForsetiClient[0]} on NODE(66), because holders of that lock are waiting for ForsetiClient[4]. Wait list:ExclusiveLock[ Client[0] waits for [4]] at org.neo4j.driver.internal.util.Futures.asCompletionException(Futures.java:171) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.util.Futures.combineErrors(Futures.java:193) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.ExplicitTransaction.lambda$handleCommitOrRollback$8(ExplicitTransaction.java:259) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:836) ~[?:1.8.0_242] at java.util.concurrent.CompletableFuture.uniHandleStage(CompletableFuture.java:848) ~[?:1.8.0_242] at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:2168) ~[?:1.8.0_242] at java.util.concurrent.CompletableFuture.handle(CompletableFuture.java:110) ~[?:1.8.0_242] at org.neo4j.driver.internal.ExplicitTransaction.lambda$rollbackAsync$4(ExplicitTransaction.java:170) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at java.util.concurrent.CompletableFuture.uniCompose(CompletableFuture.java:966) ~[?:1.8.0_242] at java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:940) ~[?:1.8.0_242] at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488) [?:1.8.0_242] at java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1975) [?:1.8.0_242] at org.neo4j.driver.internal.handlers.PullAllResponseHandler.completeFailureFuture(PullAllResponseHandler.java:326) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.handlers.PullAllResponseHandler.onFailure(PullAllResponseHandler.java:109) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageDispatcher.handleIgnoredMessage(InboundMessageDispatcher.java:142) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.messaging.v1.MessageReaderV1.unpackIgnoredMessage(MessageReaderV1.java:88) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.messaging.v1.MessageReaderV1.read(MessageReaderV1.java:62) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:83) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:35) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.MessageDecoder.channelRead(MessageDecoder.java:47) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1414) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:945) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:146) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:645) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:580) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:497) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:459) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242] Caused by: org.neo4j.driver.v1.exceptions.TransientException: ForsetiClient[4] can't acquire ExclusiveLock{owner=ForsetiClient[0]} on NODE(66), because holders of that lock are waiting for ForsetiClient[4]. Wait list:ExclusiveLock[ Client[0] waits for [4]] at org.neo4j.driver.internal.util.ErrorUtil.newNeo4jError(ErrorUtil.java:70) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageDispatcher.handleFailureMessage(InboundMessageDispatcher.java:105) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.messaging.v1.MessageReaderV1.unpackFailureMessage(MessageReaderV1.java:83) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.messaging.v1.MessageReaderV1.read(MessageReaderV1.java:59) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:83) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.InboundMessageHandler.channelRead0(InboundMessageHandler.java:35) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.async.inbound.MessageDecoder.channelRead(MessageDecoder.java:47) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:297) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:413) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] at org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:265) ~[neo4j-java-driver-1.7.5.jar:1.7.5-d56154a7e96ff71615b894ee9a15d08c370691e6] ... 15 more