Sure, makes sense. Right now I'm not taking the read locks because LockHolder doesn't support locking relationships. When we need this functionality, let's do it with the iterator. I think that's how that Java-version did it as well.