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

[RRFaM] Have delete path write to config.transactions

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.0.25, 4.2.15, 4.4.7, 5.0.0-rc0
    • Component/s: None
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Backport Requested:
      v4.4, v4.2, v4.0
    • Sprint:
      Repl 2021-05-17

      Description

      When the RRFaM behavior is enabled:

      • A primary executing the delete can add a remove preImage to the SessionTxnRecord within the same WUOW.
      • A secondary applying the delete can also add the preImage to the SessionTxnRecord within the same WUOW.
        • Right now the deleteObjects return value does not provide the preImage. This ticket should expose that API.
        • However the config.transactions.update predicate must include the clause: `{txnNum: {$lt: <updated txnNum>`}}.
      • Remove noop oplog entry writes for FaM removes
      • Collections that always store preImages must continue to write pre-image noops for findAndModify's that remove a document.
        • These findAndModify's should not write the preImage to a config.transactions document
        • The current OpObserver::onDelete API cannot distinguish between an engaged deletedDoc due to a findAndModify versus the collection configuration (without attempting to read the collection catalog using the input collection UUID). One solution is to create a structure similar to the CollectionUpdateArgs
        • Changing the onDelete API may be necessary, which would allow us to correct SERVER-56518.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              daniel.gottlieb Daniel Gottlieb
              Reporter:
              daniel.gottlieb Daniel Gottlieb
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: