Neo4j APOC configuration not working on the CentOS 7

Viewed 96

I have deployed a ReactJS application with neo4j database on CentOS 7 server. Neo4j version is 4.4.2. The application also uses apoc library. So i added apoc-4.4.0.1-all.jar file to the /var/lib/neo4j/plugins directory on the server. Then i did following-

  1. chown neo4j:neo4j apoc-4.4.0.1-all.jar

  2. chmod 755 apoc-4.4.0.1-all.jar

  3. Modify /etc/neo4j/neo4j.conf file to

    • dbms.security.procedures.whitelist=apoc.coll.*,apoc.load.*,apoc.*

    • dbms.security.procedures.unrestricted=apoc.*

    • uncomment dbms.directories.plugins=/var/lib/neo4j/plugins

  4. systemctl restart neo4j

After deploying the project, when i open the application on the browser and insert some values in a form, it shows following error-

Unknown function 'apoc.map.submap' (line 3, column 14 (offset: 56)) " WHERE apoc.map.submap(properties(n), keys(obj), [], false) = obj" ^

Did i miss anything in apoc configuration ?

2 Answers

Try changing the plugin directory from: /var/lib/neo4j/plugins to /var/lib/neo4j/graph.db/plugins directory then restart the neo4j server. You need to create the folder if not found.

If you install neo4j using an installer rather than download/untar/unzip a zipped/tar file; then neo4j server is looking at the apoc under default.graphdb folder

related: APOC is only partially installing its extension in neo4j (one procedure)

The ownership of /var/lib/neo4j/data folder has to be neo4j, not root

Related