OOM in AuditThread
When auditing a large collection which has many (500k+) missing files, we pull the entire result set in to memory which then causes us to run out of heap space. We should instead use a cursor to iterate.
This is the result of MonitoredItemManager.listItemsBefore, of which the only usage is in the AuditThread.