In the OplogFetcher, we should create the opCtx before we obtain the lock here.
Since destructors are called in reverse order, the current code tries to destruct the opCtx when it goes out of scope before releasing the lock. This leads to a potential deadlock situation with tenant migrations.