[Neo] bug in Node.delete() ?
mattias at neotechnology.com
Tue Feb 9 23:26:05 CET 2010
Yep, that's right... The documentation is a bit unclear/untrue about
that. Ryan is right in that it's only checked when the transaction is
commited. This means that you can delete a node which has
relationships on it, just as long as you delete its relationships
before the transaction is committed.
2010/2/9, Ryan Levering <rrlevering at gmail.com>:
> Well, it's not totally untrue. Try changing your tx.failure() to
> tx.success() and you'll get the error you're looking for. Neo is a fairly
> transaction driven database and I imagine it doesn't check the constraints
> of the delete until it's committed.
> On Feb 9, 2010, at 3:28 PM, Stefan Armbruster wrote:
>> it looks like Node.delete() does not behave as defined in the API docs:
>> Deletes this node if it has no relationships attached to it. If delete()
>> is invoked on a node with relationships, an unchecked exception will be
>> raised. Invoking any methods on this node after delete() has returned is
>> invalid and will lead to unspecified behavior.
>> I've created some sample code (http://pastebin.com/f2918f9d5)
>> demonstrating this. Line 25 tries to delete a node with a relationship
>> attached to it. There's no exception (as expected from the API docs) and
>> the node is still there afterwards. So delete() seems to do simply
>> nothing if there are any realtionships.
>> Did I miss something or should we consider this a bug?
>> Neo mailing list
>> User at lists.neo4j.org
> Neo mailing list
> User at lists.neo4j.org
Mattias Persson, [mattias at neotechnology.com]
Neo Technology, www.neotechnology.com
More information about the User