Question

When trying to purge neo4j (1.8.2) with the cleandb extension (for neo4j 1.8), it fails:

[path] ? curl -v -X DELETE 'http://localhost:7475/db/cleandb/12sE$lkj3%'
* About to connect() to localhost port 7475 (#0)
*   Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 7475 (#0)
> DELETE /db/cleandb/12sE$lkj3% HTTP/1.1
> User-Agent: curl/7.29.0
> Host: localhost:7475
> Accept: */*
> 
< HTTP/1.1 500 Internal Server Error
< Content-Length: 0
< Server: Jetty(6.1.25)
< 
* Connection #0 to host localhost left intact

Obviously, I do not only get a 500 error code, also the db is not purged. Of course, access URL and "secret-key" of the plugin are set up as used in the curl request:

org.neo4j.server.thirdparty_jaxrs_classes=org.neo4j.server.extension.test.delete=/db/cleandb
org.neo4j.server.thirdparty.delete.key=12sE$lkj3%

I would conveniently add the cleandb tag, but I lack the 1500 reputation.

Any ideas? Thanks in advance!

EDIT (The reason I use cleandb is to set up unittests in neo4django). /EDIT

Was it helpful?

Solution

Hm, I have the cleandb extension working locally against 1.8.2 and 1.9. For example, you can run

from neo4django.db import connection
from pdb import set_trace; set_trace()
connection.cleandb()

and trace the cleandb Python call, and it gets a 200 and accompanying response body,

{\n  "node-indexes" : [ ],\n  "nodes" : 4,\n  "relationship-indexes" : [ ],\n  "relationships" : 0,\n  "maxNodesToDelete" : 1000\n}

I'm not sure what the difference between curl and the Python call might be- any chance you could try the above in a module, run it, and see what happens?

EDIT:

The cleandb extension is unmanaged, so you can't (IIRC?) set the URL to '/db/cleandb', it needs to be on its own root- I use '/cleandb'. LMK if that helps!

EDIT:

Aw, disregard that, '/db/' urls seem to work fine. Maybe you could use the 'install_local_neo4j.bash' script (https://github.com/scholrly/neo4django/blob/master/install_local_neo4j.bash) to install a copy of Neo4j and set it up the same way, if that works for you? And if so, maybe we can see how the setups differ...

OTHER TIPS

It only works with Neo4j versions up to 1.7 I think.

Didn't update it anymore b/c you can do that cleanup with cypher now, see: http://neo4j.org/resources/cypher

start n=node(*)
match n-[r?]->()
where id(n) <> 0
delete n,r
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top