[SERVER-36638] Replace state machine commit coordination implementation with Futures implementation Created: 14/Aug/18  Updated: 29/Oct/23  Resolved: 05/Dec/18

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 4.1.7

Type: Task Priority: Major - P3
Reporter: Esha Maharishi (Inactive) Assignee: Matthew Saltz (Inactive)
Resolution: Fixed Votes: 0
Labels: ShardedTxn:DistributedCommit
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Duplicate
is duplicated by SERVER-37924 Change TransactionCoordinator::Partic... Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2018-11-19, Sharding 2018-12-03, Sharding 2018-12-17
Participants:
Linked BF Score: 66

 Description   

There are three improvements we could make to how the coordinator shard processes votes and sends commit/abort:

1) Use one of the Grid's "arbitrary executors" rather than the Grid's "fixed executor". Currently, the fixed executor is used because it is the only executor for which the a mock network is supported by the sharding unit test fixtures.

2) If a voteCommit or voteAbort triggers making the decision, do not block the voteCommit/voteAbort Client thread on things like persisting the decision, waiting for majority writeConcern, sending the decision and waiting for acks.

3) Make sending an abort decision a "fire and forget" message. Currently, the ARS does not support sending "fire and forget" messages.



 Comments   
Comment by Githook User [ 05/Dec/18 ]

Author:

{'name': 'Matthew Saltz', 'email': 'matthew.saltz@mongodb.com', 'username': 'saltzm'}

Message: SERVER-36638 Make coordinator commit fully asynchronous
Branch: master
https://github.com/mongodb/mongo/commit/04a6d5950a0e650155972fc890ec626a8170a0f6

Comment by Esha Maharishi (Inactive) [ 05/Nov/18 ]

Assigning to matthew.saltz to track the work to switch out the commit coordination implementation from being in a background thread to a chain of asynchronous events.

If there's already a ticket for that, feel free to close this as a dupe.

Generated at Thu Feb 08 04:43:42 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.