neo4j / graph-data-science

Source code for the Neo4j Graph Data Science library of graph algorithms.
https://neo4j.com/docs/graph-data-science/current/
Other
596 stars 157 forks source link

Cannot pull graph data science plugin version #270

Closed abhinavmishra590 closed 1 year ago

abhinavmishra590 commented 1 year ago

Trying to run neo4j server through docker-compose and install graph data science plugin on Macbook M1. It throws error that

Error: No jar URL found for version '4.4.19' in versions.json from 'https://graphdatascience.ninja/versions.json'

Here is my docker-compose.yml:

neo4j:
    image: neo4j:4.4
    platform: linux/amd64
    restart: always
    hostname: neo4j
    container_name: neo4j
    ports:
      - 7474:7474
      - 7687:7687
    volumes:
      - ./neo4j/data:/data
    environment:
      - NEO4J_AUTH=neo4j/pleaseletmein
      - NEO4J_PLUGINS=["apoc", "graph-data-science"]
      - NEO4J_dbms_security_procedures_unrestricted=apoc.*,gds.*
      - NEO4J_server_memory_heap_initial__size=1G
      - NEO4J_server_memory_heap_max__size=2G
      - NEO4J_server_memory_pagecache_size=1G

If I do version 4.4.0 in above yml then it throws error:

neo4j      | 2023-05-01 04:25:31.395+0000 WARN  Unrecognized setting. No declared setting with name: server.memory.pagecache.size
neo4j      | 2023-05-01 04:25:31.400+0000 WARN  Unrecognized setting. No declared setting with name: server.memory.heap.max_size
neo4j      | 2023-05-01 04:25:31.401+0000 WARN  Unrecognized setting. No declared setting with name: server.memory.heap.initial_size
neo4j      | 2023-05-01 04:25:31.401+0000 WARN  Unrecognized setting. No declared setting with name: PLUGINS
neo4j      | 2023-05-01 04:25:31.524+0000 INFO  Starting...
neo4j      | 2023-05-01 04:25:35.198+0000 INFO  This instance is ServerId{cea5043e} (cea5043e-759f-4bcf-a10a-f0859ba901b3)
neo4j      | 2023-05-01 04:25:43.586+0000 INFO  ======== Neo4j 4.4.0 ========
neo4j      | 2023-05-01 04:25:53.538+0000 ERROR Failed to start Neo4j on 0.0.0.0:7474.
neo4j      | java.lang.RuntimeException: Error starting Neo4j database server at /data/databases
neo4j      |    at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:228) ~[neo4j-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.build(DatabaseManagementServiceFactory.java:181) ~[neo4j-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.server.CommunityBootstrapper.createNeo(CommunityBootstrapper.java:36) ~[neo4j-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:142) [neo4j-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.server.NeoBootstrapper.start(NeoBootstrapper.java:95) [neo4j-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.server.CommunityEntryPoint.main(CommunityEntryPoint.java:34) [neo4j-4.4.0.jar:4.4.0]
neo4j      | Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.dbms.database.DefaultSystemGraphInitializer@4e0cc334' was successfully initialized, but failed to start. Please see the attached cause exception "The read version string length 99 is not proper.".
neo4j      |    at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:463) ~[neo4j-common-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:219) ~[neo4j-4.4.0.jar:4.4.0]
neo4j      |    ... 5 more
neo4j      | Caused by: org.neo4j.graphdb.DatabaseShutdownException: This database is shutdown.
neo4j      |    at org.neo4j.kernel.availability.DatabaseAvailabilityGuard.assertDatabaseAvailable(DatabaseAvailabilityGuard.java:172) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginKernelTransaction(GraphDatabaseFacade.java:197) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransactionInternal(GraphDatabaseFacade.java:176) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:122) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:116) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTransaction(GraphDatabaseFacade.java:104) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.beginTx(GraphDatabaseFacade.java:99) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.dbms.database.SystemGraphComponents.initializeSystemGraph(SystemGraphComponents.java:97) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.dbms.database.DefaultSystemGraphInitializer.initializeSystemGraph(DefaultSystemGraphInitializer.java:41) ~[neo4j-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.dbms.database.SystemGraphInitializer.start(SystemGraphInitializer.java:29) ~[neo4j-kernel-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:442) ~[neo4j-common-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:110) ~[neo4j-common-4.4.0.jar:4.4.0]
neo4j      |    at org.neo4j.graphdb.facade.DatabaseManagementServiceFactory.startDatabaseServer(DatabaseManagementServiceFactory.java:219) ~[neo4j-4.4.0.jar:4.4.0]
neo4j      |    ... 5 more
neo4j      | Caused by: java.lang.IllegalArgumentException: The read version string length 99 is not proper.

My docker version output:

Client:
 Cloud integration: v1.0.31
 Version:           23.0.5
 API version:       1.42
 Go version:        go1.19.8
 Git commit:        bc4487a

 OS/Arch:           darwin/arm64
 Context:           default

Server: Docker Desktop 4.19.0 (106363)
 Engine:
  Version:          23.0.5
  API version:      1.42 (minimum version 1.12)
  Go version:       go1.19.8
  Git commit:       94d3ad6

  OS/Arch:          linux/arm64
  Experimental:     false
Mats-SX commented 1 year ago

Hello @abhinavmishra590

Similar to your other issue (#269) I've been unsuccessful in reproducing. I've used the following docker-compose.yml:

version: '4.15'

services:
  neo4j4:
    image: neo4j:4.4
    platform: linux/amd64
    restart: always
    hostname: neo4j4
    container_name: neo4j4
    ports:
      - 7474:7474
      - 7687:7687
    volumes:
      - ./neo4j/data:/data
    environment:
      - NEO4J_AUTH=neo4j/pleaseletmein
      - NEO4J_PLUGINS=["apoc", "graph-data-science"]
      - NEO4J_dbms_security_procedures_unrestricted=apoc.*,gds.*
      - NEO4J_server_memory_heap_initial__size=1G
      - NEO4J_server_memory_heap_max__size=2G
      - NEO4J_server_memory_pagecache_size=1G

And it works. I've seen this in the log:

Fetching versions.json for Plugin 'graph-data-science' from https://graphdatascience.ninja/versions.json
Installing Plugin 'graph-data-science' from https://graphdatascience.ninja/neo4j-graph-data-science-2.3.5.jar to /var/lib/neo4j/plugins/graph-data-science.jar

Which seems correct. I can open 0.0.0.0:7474 and run Cypher queries successfully.

Please see if you can retry and if it doesn't work we'll try to troubleshoot.

All the best Mats

FlorentinD commented 1 year ago

Hello @abhinavmishra590 , I am closing this issue due to inactivity and us not being able to reproduce your report. Please open the issue again if the problem still exists.