Reputation: 127
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())
Upvotes: 4
Views: 394
Reputation: 127
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.
Upvotes: 2
Reputation: 14809
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.
Upvotes: 0