-
Type: Task
-
Resolution: Won't Fix
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Replication
-
Replication
We must not allow transactions on shard servers when the featureCompatibilityVersion is 4.0.
When a replica set is part of a sharded cluster, we can issue transaction commands through multiple routers. This allows us to target primaries in decreasing term order, which can lead to an anomaly where a transaction can go from aborted to committed. This is addressed in FCV 4.2 by performing a write when a transaction is aborted (SERVER-38132) and aborting a transaction when we return NoSuchTransaction (SERVER-38133).
- is related to
-
SERVER-38850 Perform noop write before returning NoSuchTransaction error
- Closed
- related to
-
SERVER-38132 Aborting a transaction must always update config.transactions and write an abort oplog entry
- Closed
-
SERVER-38133 When asked to continue a transaction whose txnNumber is too new, TransactionParticipant must abort that transaction
- Closed
-
SERVER-38134 Ensure config.transactions and TransactionParticipant have consistent state after every command
- Closed