[
https://issues.apache.org/jira/browse/NIFI-8209?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17293234#comment-17293234
]
Matt Burgess commented on NIFI-8209:
------------------------------------
According to https://github.com/neo4j/neo4j-java-driver/wiki the newest drivers
are backwards-compatible to 3.5, but the current ones should support 3.5 back
to 3.3 or 3.2. Presumably most folks have upgraded, but since 3.4 for example
still gets maintenance releases, I'm not sure we can just upgrade the driver
without breaking existing installs.
Instead we should consider an additional NAR, reusing the code (from moving it
to a common JAR for example) but upgrading the driver to the latest. We've done
that before for things like Elasticsearch, Kafka, HBase, and Hive.
> The Apache Nifi 1.12.1 Neo4JCypherClientService controller service hangs
> indefinitely attempting to connect to Neo4j 4.2.3
> --------------------------------------------------------------------------------------------------------------------------
>
> Key: NIFI-8209
> URL: https://issues.apache.org/jira/browse/NIFI-8209
> Project: Apache NiFi
> Issue Type: Bug
> Components: Extensions, Tools and Build
> Affects Versions: 1.12.1
> Environment: UNIX/CentOS 7
> Reporter: freddie Burgess
> Priority: Major
>
> The latest Neo4j Controller Service in Nifi from the graph bundle has been
> built using neo4j-java-driver v1.6.2 and is not compatible with Neo4j 4.x.
> Enabling the controller fails in reaching the Neo4j database.
> neo4j-enterprise-edition
> Nifi 1.11.x + Neo 4.2.2 => ServiceUnavailableException
> Nifi 1.11.x + Neo 4.1.5 => ServiceUnavailableException
> Nifi 1.11.x + Neo 4.0.11 => ServiceUnavailableException
> Nifi 1.11.x + Neo 3.5.26 => OK
> neo4j-community-edition
> Nifi 1.12.x + Neo 4.2.3 => ServiceUnavailableException
> Nifi 1.12.x + Neo 4.2.2 => ServiceUnavailableException
> Nifi 1.11.x + Neo 4.1.5 => ServiceUnavailableException
> Nifi 1.11.x + Neo 4.0.11 => ServiceUnavailableException
> Nifi 1.11.x + Neo 3.5.26 => OK
>
> 2021-01-13 20:00:02,167 ERROR [Timer-Driven Process Thread-9]
> o.a.n.c.s.StandardControllerServiceNode
> StandardControllerServiceNode[service=Neo4JCypherClientService[id=192a1810-11da-101d-b4cd-f704063cba3d],
> versionedComponentId=null,
> processGroup=StandardProcessGroup[identifier=6038b1ce-016d-1000-68fc-0a8f542cf79b,name=NiFi
> Flow], active=true] Failed to invoke @OnEnabled method due to
> org.apache.nifi.processor.exception.ProcessException: Error while getting
> connectionConnection to the database terminated. This can happen due to
> network instabilities, or due to restarts of the database: {}
> org.apache.nifi.processor.exception.ProcessException: Error while getting
> connectionConnection to the database terminated. This can happen due to
> network instabilities, or due to restarts of the database
> at
> org.apache.nifi.graph.Neo4JCypherClientService.onEnabled(Neo4JCypherClientService.java:255)
> at jdk.internal.reflect.GeneratedMethodAccessor505.invoke(Unknown Source)
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:142)
> at
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:130)
> at
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:75)
> at
> org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotation(ReflectionUtils.java:52)
> at
> org.apache.nifi.controller.service.StandardControllerServiceNode$2.run(StandardControllerServiceNode.java:432)
> at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
> 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:834)
> Caused by: org.neo4j.driver.v1.exceptions.ServiceUnavailableException:
> Connection to the database terminated. This can happen due to network
> instabilities, or due to restarts of the database
> at
> org.neo4j.driver.internal.util.ErrorUtil.newConnectionTerminatedError(ErrorUtil.java:45)
> at
> org.neo4j.driver.internal.async.HandshakeHandler.channelInactive(HandshakeHandler.java:85)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224)
> at
> org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:377)
> at
> org.neo4j.driver.internal.shaded.io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:342)
> at
> org.neo4j.driver.internal.shaded.io.netty.handler.ssl.SslHandler.channelInactive(SslHandler.java:1010)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75)
> at
> org.neo4j.driver.internal.shaded.io.netty.handler.timeout.IdleStateHandler.channelInactive(IdleStateHandler.java:277)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:224)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline$HeadContext.channelInactive(DefaultChannelPipeline.java:1409)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:245)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:231)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:927)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:822)
> at
> org.neo4j.driver.internal.shaded.io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
> at
> org.neo4j.driver.internal.shaded.io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
> at
> org.neo4j.driver.internal.shaded.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)
> 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)
> ... 1 common frames omitted
--
This message was sent by Atlassian Jira
(v8.3.4#803005)