Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-63976

TenantMigrationOplogApplier expects pre/post image noop oplog entries to have a statement id

    • Type: Icon: Improvement Improvement
    • Resolution: Won't Do
    • Priority: Icon: Minor - P4 Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: None
    • Serverless
    • Server Serverless 2022-03-21

      The TenantMigrationOplogApplier currently expects noop pre/post image oplog entries to have a statement id. There is some inconsistency around what statement id is assigned to each pre/post image oplog entry:

      1. For the case where the side image collection is enabled, the DocumentSoureceFindAndModifyImageLookup stage sets the statement id of each forged image oplog entry to 0.
      2. For the case where the side image collection is not enable, the OpObserverImpl indirectly sets the statement id of each image oplog entry to the statement id of the oplog entry that has the pre/post image.

      Pre/post image oplog entries are not linked the retryable write oplog chain, that is why re-using statement ids is not causing any issue. However, it is still confusing to make multiple oplog entries have the same statement ids, especially if the they do not belong to the same write (case 1). 

            Assignee:
            backlog-server-serverless [DO NOT USE] Backlog - Server Serverless (Inactive)
            Reporter:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: