Question

I have a Django (Version 1.4.0) web app which uses neo4django mapper to run queries on neo4j (Version 1.8.2).

However, as soon as I do a query like

OnlinePerson.objects.filter(name="Bijan")

I get a Runtime error as

('The type node for class OnlinePerson could not be created in the database.', StatusException())

I tried many different things, but couldn't resolve!

Traceback:
File "/Library/Python/2.7/site-packages/django/core/handlers/base.py" in get_response
  111.                         response = callback(request, *callback_args, **callback_kwargs)
File "/Users/Bijan/BHIC/mySVN/NeoD/src/NeoD/views.py" in home
  22.     return render_to_response('index.html', {'Person' : entries, 'Person2': ["Bijan","Nastaran"]})
File "/Library/Python/2.7/site-packages/django/shortcuts/__init__.py" in render_to_response
  20.     return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs)
File "/Library/Python/2.7/site-packages/django/template/loader.py" in render_to_string
  171.         return t.render(Context(dictionary))
File "/Library/Python/2.7/site-packages/django/template/base.py" in render
  140.             return self._render(context)
File "/Library/Python/2.7/site-packages/django/template/base.py" in _render
  134.         return self.nodelist.render(context)
File "/Library/Python/2.7/site-packages/django/template/base.py" in render
  823.                 bit = self.render_node(node, context)
File "/Library/Python/2.7/site-packages/django/template/debug.py" in render_node
  74.             return node.render(context)
File "/Library/Python/2.7/site-packages/django/template/defaulttags.py" in render
  145.         len_values = len(values)
File "/Library/Python/2.7/site-packages/django/db/models/query.py" in __len__
  85.                 self._result_cache = list(self.iterator())
File "/Library/Python/2.7/site-packages/neo4django/db/models/query.py" in iterator
  733.         for model in self.query.execute(using):
File "/Library/Python/2.7/site-packages/neo4django/db/models/query.py" in execute
  610.             type_node = self.nodetype._type_node(using)
File "/Library/Python/2.7/site-packages/neo4django/db/models/base.py" in _type_node
  423.             return cls.__type_node_classmethod(using)
File "/Library/Python/2.7/site-packages/neo4django/db/models/base.py" in __type_node
  406.             raise RuntimeError(error_message, e)

Exception Type: RuntimeError at /
Exception Value: ('The type node for class OnlinePerson could not be created in the database.', StatusException())
Was it helpful?

Solution

Finally after lots of struggles and trying out different solutions the problem is solved. I think the main problem was with my neo4j version (1.8.2).

After switching back to 1.7.2, everything worked correctly.

OTHER TIPS

Do you have the Neo4j Gremlin plugin installed? Type nodes are created using the Gremlin plugin because they require certain transactionality promises. It's typically installed by default. Unfortunately, some environments (like Heroku) have this plugin disabled.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top