Example of locking in the Tree API
To understand this better, let's look at an example:  Imagine you have a hierarchy like this and we want to move c/ to be underneath b/:        /      --|--     /    \     a    c     |    |     b    e     |     d  The end result would be something like this:         /        |                a           |           b         --|--     /    \     d    c           |           e   To make this move, locks would have been acquired on: /a/b - because it's the parent underneath which the data will be put /c and /c/e - because they're the nodes that are being moved /a/b/c and /a/b/c/e - because that's new target location for the nodes being moved