[SERVER-46995] Convert ReplIndexBuildState from struct to class Created: 19/Mar/20  Updated: 29/Oct/23  Resolved: 16/Oct/20

Status: Closed
Project: Core Server
Component/s: Storage
Affects Version/s: None
Fix Version/s: 4.9.0

Type: Task Priority: Major - P3
Reporter: Suganthi Mani Assignee: Benety Goh
Resolution: Fixed Votes: 0
Labels: neweng
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-47415 move data structures for tracking act... Closed
Backwards Compatibility: Fully Compatible
Sprint: Execution Team 2020-04-20, Execution Team 2020-05-04, Execution Team 2020-05-18, Execution Team 2020-06-01, Execution Team 2020-06-29, Execution Team 2020-10-19, Execution Team 2020-11-02
Participants:

 Description   

ReplIndexBuildState struct has mutex lock to protect the access of few ReplIndexBuildState data members. Currently, there are ways, developers can make mistakes in accessing those mutex protected members. Also, this has created dependency between 2 data members of ReplIndexBuildState. We should consider having ReplIndexBuildState provide accessors for members that require holding the mutex.



 Comments   
Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 rename isMaster references to isPrimary in IndexBuildsCoordinator
Branch: master
https://github.com/mongodb/mongo/commit/99ea336e991ea9dfccca8f788a2cdb8bd06b1f18

Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 restrict visibility of ReplIndexBuildState fields protected by mutex
Branch: master
https://github.com/mongodb/mongo/commit/056624cfe3f03d873df0a19f403570b772afa295

Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 add ReplIndexBuildState::onConflictWithNewIndexBuild()
Branch: master
https://github.com/mongodb/mongo/commit/b5d9a293133896c3977ae052c5b83a5a59cc015d

Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 add methods for synchronizing IndexBuildAction to ReplIndexBuildState
Branch: master
https://github.com/mongodb/mongo/commit/b179b1b261591857523ee332d220842615b9c8c6

Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 add ReplIndexBuildState methods for updating vote request callback handle
Branch: master
https://github.com/mongodb/mongo/commit/af298544ba207890ef3dc9da9b5b7db8e17eb2bb

Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 move index completion logic from IndexBuildsCoordinator into ReplIndexBuildState
Branch: master
https://github.com/mongodb/mongo/commit/46fc739089ad30affe64177e2c74cae32902f350

Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 move pre-commit and abort logic from IndesBuildsCoordinator into ReplIndexBuildState
Branch: master
https://github.com/mongodb/mongo/commit/8bc619e4656e966d207838f8a45707912d8e3579

Comment by Githook User [ 16/Oct/20 ]

Author:

{'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}

Message: SERVER-46995 convert ReplIndexBuildState to class and un-inline. add methods for resumable index builds
Branch: master
https://github.com/mongodb/mongo/commit/401d1f1a28dd94bd96de9dc733cd61184661ec15

Generated at Thu Feb 08 05:13:00 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.