[SERVER-39085] move secondary oplog application logic for index creation into IndexBuildsCoordinator Created: 18/Jan/19  Updated: 29/Oct/23  Resolved: 07/Mar/19

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

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

Issue Links:
Depends
Duplicate
is duplicated by SERVER-36759 Overhaul currentOp output for createI... Closed
Problem/Incident
causes SERVER-39968 improve filtering logic in IndexBuild... Backlog
Related
related to SERVER-36759 Overhaul currentOp output for createI... Closed
related to SERVER-40023 remove unused background index buildi... Closed
related to SERVER-44186 allow index builds to continue runnin... Closed
is related to SERVER-34896 Using index builder on primaries does... Closed
is related to SERVER-38986 Timestamp drained writes from the ind... Closed
Backwards Compatibility: Fully Compatible
Sprint: Storage NYC 2019-02-11, Storage NYC 2019-02-25, Storage NYC 2019-03-11
Participants:
Linked BF Score: 19
Story Points: 8

 Description   

During secondary oplog application, we should delegate index creation to the IndexBuildsCoordinator.



 Comments   
Comment by Githook User [ 07/Mar/19 ]

Author:

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

Message: SERVER-39085 use IndexBuildsCoordinator to build indexes during secondary oplog application
Branch: master
https://github.com/mongodb/mongo/commit/281401e56c2d89f8751203c8be0e5251ff7aaa5c

Comment by Githook User [ 07/Mar/19 ]

Author:

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

Message: Revert "SERVER-39085 use IndexBuildsCoordinator to build indexes during secondary oplog application"

This reverts commit 7fce1f86f95a582b7fe993ddd10683aa2a50da77.
Branch: master
https://github.com/mongodb/mongo/commit/2c69836243bf5887eb0ff28c0f5a8cb0ef816164

Comment by Githook User [ 07/Mar/19 ]

Author:

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

Message: SERVER-39085 use IndexBuildsCoordinator to build indexes during secondary oplog application
Branch: master
https://github.com/mongodb/mongo/commit/7fce1f86f95a582b7fe993ddd10683aa2a50da77

Comment by Githook User [ 06/Mar/19 ]

Author:

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

Message: SERVER-39085 IndexBuildsCoordinator aborts on index build failures during secondary oplog application
Branch: master
https://github.com/mongodb/mongo/commit/afd233fca7755f8bba574916ff049c24bfcf2052

Comment by Githook User [ 06/Mar/19 ]

Author:

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

Message: SERVER-39085 fix index build setup in the IndexBuildsCoordinator during secondary oplog application

New index builds are ignored if the same indexes are already being built.
IndexBuildsCoordinator does not add collation defaults or filter indexes on secondaries.
MultiIndexBlock adds index build info to CurOp for identification purposes.
Branch: master
https://github.com/mongodb/mongo/commit/495e1b44df0e29cde8711d1d72bf8a0ccc2f8607

Comment by Githook User [ 06/Mar/19 ]

Author:

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

Message: SERVER-39085 IndexBuildsCoordinator handles shutdowns during index builds

This commit also implements IndexBuildsManager::interruptIndexBuild() so that it calls
MultiIndexBlock::abortWithoutCleanup().

Index builds cannot be interrupted during secondary oplog application
Branch: master
https://github.com/mongodb/mongo/commit/f1eab6b6e38bb8b22b7e093da61f65c7bef51061

Comment by Githook User [ 06/Mar/19 ]

Author:

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

Message: SERVER-39085 IndexBuildsManager supports relaxing index constraints during index builds
Branch: master
https://github.com/mongodb/mongo/commit/2cc9b94ea266c87f7a71a708a108ce4f2466b76c

Comment by Githook User [ 06/Mar/19 ]

Author:

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

Message: SERVER-39085 IndexBuildsCoordinator timestamps writes while draining
Branch: master
https://github.com/mongodb/mongo/commit/d926100d60c59baae6d777cde7bc2f231c8ec1af

Comment by Githook User [ 06/Mar/19 ]

Author:

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

Message: SERVER-39085 un-inline repl::TimestampBlock
Branch: master
https://github.com/mongodb/mongo/commit/e960cdd7d37d6ddd9e378e710963033d19f7fdd5

Comment by Benety Goh [ 20/Feb/19 ]

IndexBuildsCoordinator will also need to retain the timestamping logic for index completion introduced in SERVER-34986

Comment by Benety Goh [ 20/Feb/19 ]

Timestamping changes made to IndexBuilder in SERVER-38986 should also be incorporated into IndexBuildsCoordinator.

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