This project was built and is maintained by Tiago Oliveira - [email protected].
Neo4j APOC dev doc.
The main intention with this simple Neo4j APOC proc is to realise how easy is to create, debug and deploy a custom procedure in a Neo4j database. It should be my template for the next APOC's.
-The maven command to create the APOC procedure .jar mvn clean package
-Then copy the jar to the Neo4j lib repository sudo cp sequence-graph-1.0-SNAPSHOT.jar /var/lib/neo4j/plugins/
-Run this procedure on cypher browser/shell to verify if the new awesome proc has been successfully deployed CALL dbms.procedures() YIELD name RETURN head(split(name,".")) as package, count(*), collect(name) as procedures;
-In case everything is ok, run this test CALL sequence.createseqsignal(2000, 100, "NEXT_k")
-This linux command below allows to check any error generated by this new procedure tail -10 /var/log/neo4j/debug.log | grep "SequenceCreate:createseqsignal"
Notice that once this procedure performs Write operations on a graph, it is mandatory to run in a context where the User is granted for that. Otherwise a similar error will shows up: "Neo.ClientError.Procedure.ProcedureCallFailed: Failed to invoke procedure sequence.createseqsignal
: Caused by: org.neo4j.graphdb.security.AuthorizationViolationException: Write operations are not allowed for user 'neo4j' with FULL restricted to READ."
Write Safer User-Defined Functions & Procedures with the Neo4j Procedure Compiler