In my project I have a scheduled job that removes a document which is via a RowIterator. This results in a StackOverflowError. Using a NodeIterator however does work, but it seems there is something different while using the RowIterator.
The node which is returned contains a bunch of mirrors where document A points to B and B points back to A. This seems to be related to the virtual layers being used with mirrors.