Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publish a new version which is compatible with Neo4j 4.3 #382

Open
ggrossetie opened this issue Jun 25, 2021 · 1 comment
Open

Publish a new version which is compatible with Neo4j 4.3 #382

ggrossetie opened this issue Jun 25, 2021 · 1 comment

Comments

@ggrossetie
Copy link

Currently, the latest version 0.28.0-neo4j-4.2.3 published is not compatible with the latest version of Neo4j 4.3:

Here's the exception thrown when Neo4j server is starting:

java.lang.RuntimeException: Error starting Neo4j database server at /data/databases
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:214) ~[neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:170) ~[neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36) ~[neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:134) [neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:90) [neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:34) [neo4j-4.3.1.jar:4.3.1]
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'apoc.ApocConfig@79f5a6ed' failed to initialize. Please see the attached cause exception "'org.apache.commons.text.lookup.StringLookup org.apache.commons.text.lookup.StringLookupFactory.dnsStringLookup()'".
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:424) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.extension.AbstractExtensions.init(AbstractExtensions.java:76) ~[neo4j-kernel-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:403) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:101) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:205) ~[neo4j-4.3.1.jar:4.3.1]
	... 5 more
Caused by: java.lang.NoSuchMethodError: 'org.apache.commons.text.lookup.StringLookup org.apache.commons.text.lookup.StringLookupFactory.dnsStringLookup()'
	at org.apache.commons.configuration2.interpol.DefaultLookups.<clinit>(DefaultLookups.java:97) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.interpol.ConfigurationInterpolator.<clinit>(ConfigurationInterpolator.java:111) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.convert.DefaultConversionHandler.<clinit>(DefaultConversionHandler.java:72) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.DefaultBeanFactory.<init>(DefaultBeanFactory.java:84) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.DefaultBeanFactory.<init>(DefaultBeanFactory.java:71) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.DefaultBeanFactory.<clinit>(DefaultBeanFactory.java:56) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.BeanHelper.<init>(BeanHelper.java:118) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.BeanHelper.<init>(BeanHelper.java:106) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.BeanHelper.<clinit>(BeanHelper.java:80) ~[apoc.jar:4.3.0.0]
	at java.lang.Class.forName0(Native Method) ~[?:?]
	at java.lang.Class.forName(Class.java:315) ~[?:?]
	at com.sun.proxy.$Proxy46.<clinit>(Unknown Source) ~[?:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:?]
	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?]
	at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1022) ~[?:?]
	at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1008) ~[?:?]
	at org.apache.commons.configuration2.builder.fluent.Parameters.createParametersProxy(Parameters.java:306) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.builder.fluent.Parameters.fileBased(Parameters.java:185) ~[apoc.jar:4.3.0.0]
	at apoc.ApocConfig.loadConfiguration(ApocConfig.java:175) ~[apoc.jar:4.3.0.0]
	at apoc.ApocConfig.init(ApocConfig.java:136) ~[apoc.jar:4.3.0.0]
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:403) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.extension.AbstractExtensions.init(AbstractExtensions.java:76) ~[neo4j-kernel-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:403) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:101) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:205) ~[neo4j-4.3.1.jar:4.3.1]
	... 5 more

You can reproduce this issue using Docker:

Prepare the plugins directory

$ mkdir plugins
$ cd plugins
$ wget -q https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/4.3.0.0/apoc-nlp-dependencies-4.3.0.0.jar
$ wget -q https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/4.3.0.0/apoc-4.3.0.0-all.jar -O apoc.jar
$ wget -q https://github.com/neo4j-contrib/spatial/releases/download/0.28.0-neo4j-4.2.3/neo4j-spatial-0.28.0-neo4j-4.2.3-server-plugin.jar -O spatial.jar
$ cd -

Note: You should add both apoc.jar and apoc-nlp-dependencies-4.3.0.0.jar in order to trigger this exception. You should also use the same naming in order to load jar in the same order.

Run neo4j 4.3 using a the local plugins directory

$ docker run --rm -v "$(pwd)/plugins:/plugins" --env NEO4J_ACCEPT_LICENSE_AGREEMENT='yes' neo4j:4.3
2021-06-25 09:49:44.575+0000 INFO  Starting...
2021-06-25 09:49:46.474+0000 INFO  ======== Neo4j 4.3.1 ========
2021-06-25 09:49:46.572+0000 ERROR Failed to start Neo4j on dbms.connector.http.listen_address, a socket address. If missing port or hostname it is acquired from dbms.default_listen_address.
java.lang.RuntimeException: Error starting Neo4j database server at /data/databases
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:214) ~[neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:170) ~[neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36) ~[neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:134) [neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:90) [neo4j-4.3.1.jar:4.3.1]
	at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:34) [neo4j-4.3.1.jar:4.3.1]
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'apoc.ApocConfig@661e279d' failed to initialize. Please see the attached cause exception "'org.apache.commons.text.lookup.StringLookup org.apache.commons.text.lookup.StringLookupFactory.dnsStringLookup()'".
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:424) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.extension.AbstractExtensions.init(AbstractExtensions.java:76) ~[neo4j-kernel-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:403) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:101) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:205) ~[neo4j-4.3.1.jar:4.3.1]
	... 5 more
Caused by: java.lang.NoSuchMethodError: 'org.apache.commons.text.lookup.StringLookup org.apache.commons.text.lookup.StringLookupFactory.dnsStringLookup()'
	at org.apache.commons.configuration2.interpol.DefaultLookups.<clinit>(DefaultLookups.java:97) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.interpol.ConfigurationInterpolator.<clinit>(ConfigurationInterpolator.java:111) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.convert.DefaultConversionHandler.<clinit>(DefaultConversionHandler.java:72) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.DefaultBeanFactory.<init>(DefaultBeanFactory.java:84) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.DefaultBeanFactory.<init>(DefaultBeanFactory.java:71) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.DefaultBeanFactory.<clinit>(DefaultBeanFactory.java:56) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.BeanHelper.<init>(BeanHelper.java:118) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.BeanHelper.<init>(BeanHelper.java:106) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.beanutils.BeanHelper.<clinit>(BeanHelper.java:80) ~[apoc.jar:4.3.0.0]
	at java.lang.Class.forName0(Native Method) ~[?:?]
	at java.lang.Class.forName(Class.java:315) ~[?:?]
	at com.sun.proxy.$Proxy43.<clinit>(Unknown Source) ~[?:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:?]
	at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[?:?]
	at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1022) ~[?:?]
	at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:1008) ~[?:?]
	at org.apache.commons.configuration2.builder.fluent.Parameters.createParametersProxy(Parameters.java:306) ~[apoc.jar:4.3.0.0]
	at org.apache.commons.configuration2.builder.fluent.Parameters.fileBased(Parameters.java:185) ~[apoc.jar:4.3.0.0]
	at apoc.ApocConfig.loadConfiguration(ApocConfig.java:175) ~[apoc.jar:4.3.0.0]
	at apoc.ApocConfig.init(ApocConfig.java:136) ~[apoc.jar:4.3.0.0]
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:403) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.extension.AbstractExtensions.init(AbstractExtensions.java:76) ~[neo4j-kernel-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:403) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:65) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:101) ~[neo4j-common-4.3.1.jar:4.3.1]
	at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:205) ~[neo4j-4.3.1.jar:4.3.1]
	... 5 more
2021-06-25 09:49:46.574+0000 INFO  Neo4j Server shutdown initiated by request
2021-06-25 09:49:46.574+0000 INFO  Stopped.
@ameyabp
Copy link

ameyabp commented Oct 22, 2021

I am facing the same issue. neo4j-spatial plugin causes the server to crash if used along with apoc plugin. If neo4j-spatial is used alone, there are no issues

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants