[
https://jira.jboss.org/jira/browse/JBCACHE-1481?page=com.atlassian.jira.p...
]
Manik Surtani resolved JBCACHE-1481.
------------------------------------
Resolution: Done
Resolution details - when attempting to wrap a node, the MVCCNodeHelper checks if the node
exists in the current TransactionContext first. If it does, it checks whether the node is
marked as deleted and un-deletes accordingly.
The fix is that an undelete should be treated as an add, which effectively triggers the
same checks on the parent (recursively, so this works for deletion on any level).
Re-adding a node deleted via parent inside transaction breaks the
parent
------------------------------------------------------------------------
Key: JBCACHE-1481
URL:
https://jira.jboss.org/jira/browse/JBCACHE-1481
Project: JBoss Cache
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 3.0.2.GA, 3.0.3.CR1
Reporter: Krzysztof Sobolewski
Assignee: Manik Surtani
Fix For: 3.0.3.GA
Attachments: ReAddDeletedNodeTest.java
The scenario:
0. Start a transaction
1. Add a node under /a/a/a for example
2. Delete /a/a (the node's parent)
3. Add the node again
4. getNode(/a/a) now returns null [the DELETED flag is still set]
I'll attach a test case soon. And I'd like to note that that test actually
exhibits more problems:
4a. getNode(/a/a/a) returns node as expected
5. Commit transaction
6a. getNode(/a/a/a) returns null (!!)
6b. getNode(/a/a) still returns null
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira