-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication
-
Fully Compatible
-
Sharding 2020-12-14, Sharding 2020-12-28
Originally we planned for the donor to just return TenantMigrationCommitted or TenantMigrationAborted without any error label, and have the proxy convert this to NoSuchTransaction with TransientTransactionError.
However, max.hirschhorn pointed out that the donor could just attach TransientTransactionError itself, and there's no need to convert the error to NoSuchTransaction.
Note that transaction operations that could fail with TenantMigrationCommitted or TenantMigrationAborted are commitTransaction or read with readConcern snapshot or afterClusterTime, so we should test that TransientTransactionError is attached on both of these.