Ensure that tenant migration abortReason is recovered correctly on stepup recovery

XMLWordPrintableJSON

    • Fully Compatible
    • ALL
    • Sharding 2021-03-22
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      • It is incorrect to use getStatusFromCommandResult() to parse the 'abortReason' BSONObj here since it doesn't contain an "ok" field so the call is expected to fail with CommandResultSchemaViolation, causing the migration stepup recovery to fail.
      • As described in SERVER-51345, the generated IDL code doesn't automatically take ownership of a passed-in BSONObj. The _stateDoc created on stepup recovery can hit this BSONElement assertion due to memory/scope issue involving 'abortReason' loaded from disk.

            Assignee:
            Cheahuychou Mao
            Reporter:
            Cheahuychou Mao
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: