[SERVER-15248] Factor our scatter-gather behavior of common replication algorithms into template algorithm Created: 12/Sep/14  Updated: 02/Oct/14  Resolved: 19/Sep/14

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 2.7.7

Type: Improvement Priority: Major - P3
Reporter: Andy Schwerin Assignee: Andy Schwerin
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-15249 Write C++ unit tests of ScatterGather... Closed
is depended on by SERVER-15250 Write C++ unit tests of ScatterGather... Closed
is depended on by SERVER-15251 Write C++ unit tests of ScatterGather... Closed
is depended on by SERVER-15252 Write unit tests of ScatterGatherRunner Closed
Backwards Compatibility: Fully Compatible
Participants:

 Comments   
Comment by Githook User [ 19/Sep/14 ]

Author:

{u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}

Message: SERVER-15248 Make ScatterGatherRunner, ElectCmdRunner and FreshnessChecker cancelable.

This is necessary so that step-downs can cancel running elections.
Branch: master
https://github.com/mongodb/mongo/commit/fa1b332411047150fcf706b3a60398c491b44d84

Comment by Githook User [ 15/Sep/14 ]

Author:

{u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}

Message: SERVER-15248 Convert FreshnessChecker to use a ScatterGatherAlgorithm.

Also, use completion functions instead of scheduling work on events to handle
election phase transitions in repl_coordinator_impl_elect.cpp. Leads to less
scheduling, and easier-to-follow code.
Branch: master
https://github.com/mongodb/mongo/commit/d427859985fffb76278a104d46a1a913528dbc4a

Comment by Githook User [ 15/Sep/14 ]

Author:

{u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}

Message: SERVER-15248 Use a ScatterGatherAlgorithm in ElectCmdRunner.
Branch: master
https://github.com/mongodb/mongo/commit/f8a3f964eda2be32154dd8afbfad9bdf6283e82e

Comment by Githook User [ 15/Sep/14 ]

Author:

{u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}

Message: SERVER-15248 Convert QuorumChecker into a ScatterGatherAlgorithm.
Branch: master
https://github.com/mongodb/mongo/commit/f082e861661501755b27eee6abf3a4e61e61fdc4

Comment by Githook User [ 15/Sep/14 ]

Author:

{u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}

Message: SERVER-15248 Introduce ScatterGatherAlgorithm interface and ScatterGatherRunner.

The ScatterGatherAlgorithm interface describes operations that a scatter-gather
process must perform. ScatterGatherRunner uses a ReplicationExecutor to
execute a ScatterGatherAlgorithm.
Branch: master
https://github.com/mongodb/mongo/commit/2791e15547ab4bd9adf64bdfb0c51b8aed637d38

Generated at Thu Feb 08 03:37:26 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.