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

[Upgrade/downgrade] Make setFCV delete the config.transactions entries for all child sessions

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 5.2.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • Sharding 2021-11-15, Sharding 2021-11-29, Sharding 2021-12-13
    • 3

      Make primary mongod do the following after setting the targetVersion for downgrading from latest (to last-lts or last-continuous) and acquiring the global S lock (i.e. here):

      • For each session that has an internal session that executed retryable internal transactions for a command with txnNumber (i.e. as indicated by its lsid.txnNumber) greater or equal to the latest txnNumber in the parent session, update the config.transactions entry for the parent session to have txnNumber equal to that lsid.txnNumber and lastWriteOpTime equal to {t: 1, ts: Timestamp(1, 0)}.
      • Delete config.transactions entries for all child sessions.
      • Explicitly replicate these writes by specifying {ns: "config.transactions"} in the generated update and delete oplog entries.

            Assignee:
            jason.zhang@mongodb.com Jason Zhang (Inactive)
            Reporter:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: