Issue Details (XML | Word | Printable)

Key: JCR-71
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Peter Nedonosko
Reporter: Nguyen Quang Hung
Votes: 0
Watchers: 0
Operations

Add/Edit UI Mockup to this issue
If you were logged in you would be able to see more operations.
exo-jcr

Problem with node path when use session.move(...., ....)

Created: 20/Jul/06 11:17 AM   Updated: 01/Aug/06 05:26 PM
Component/s: services.jcr.core
Affects Version/s: None
Fix Version/s: 1.0

Time Tracking:
Not Specified

Resolution Date: 01/Aug/06 05:24 PM
Date of First Response: 01/Aug/06 05:24 PM


 Description  « Hide
Create node .../node_A

and create 3 childs node
..../node_A/node1
..../node_A/node2
..../node_A/node3

save session

Use session to move node_A to same location with new name node_B
session.move(".../node_A", ".../node_B")

node_B still have 3 child nodes named node1, node2, node3 but only node1 have path with parent node is node_B (.../node_B/node1) , node2 and node3 have path with parent node is node_A (.../node_A/node1, .../node_A/node3)

I also committed testcase ...../usecases/TestMoveNodeWithNewName.java for this problem

 All   Comments   Work Log   Change History   Subversion Commits   FishEye      Sort Order: Ascending order - Click to sort in descending order
Peter Nedonosko added a comment - 01/Aug/06 05:24 PM
There was a old-old problem with session cache,
I did fix it in SessionDataManager.removeFromCache(ItemImpl) - tuned ReferenceMap remove operation.
But! These changes TCK's merge test made crashed.
I removed merged nodes cleanup in NodeImpl.merge(String, boolean) and TCK pass well.


Peter Nedonosko added a comment - 01/Aug/06 05:26 PM
NOTE: For NodeImpl.merge(String, boolean) I have to use old edition of SessionDataManager.removeFromCache(ItemImpl) - SessionDataManager.removeFromCacheOld(ItemImpl).
In session refactor these 'twice' will be removed.