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

[stepdown] Make "commit" and "abort" writes' onAbort handlers call TenantMigrationAccessBlocker::rollBackCommitOrAbort

    • Type: Icon: Task Task
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Replication
    • Sharding 2020-10-05, Sharding 2020-10-19

      • Add a TenantMigrationDonorHandler class that inherits from RecoveryUnit::Change (see example) in op_observer_impl.cpp with private members _databasePrefix and _state.
        • commit() can just be empty
        • rollback() should do the following (similar to SERVER-49179):
          • If _state is “abort” or “commit”, get TenantMigrationAccessBlocker for that “databasePrefix” from the TenantMigrationAccessBlockerByPrefix decoration, and and call rollBackCommitOrAbort on it.
      • Register TenantMigrationDonorHandler to the change to config.migrationDonors  onUpdate in op_observer_impl.cpp if the namespace matches  (see example).

            Assignee:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Reporter:
            esha.maharishi@mongodb.com Esha Maharishi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: