I have noticed that mongorestore will hang in replaying oplog with --archive and --oplogReplay options. After my investigation into the code, I have found that the bug was introduced by
TOOLS-1972 , which see oplog intent as a special intent. That will cause mongorestore use a SpecialCollectionCache as oplog's DemuxOut and thus finish the demux goroutine early. The following patch may solve this bug.