[SERVER-42280] IndexBuildsCoordinator starts index build on wrong collection Created: 18/Jul/19  Updated: 29/Oct/23  Resolved: 22/Jul/19

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

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

Issue Links:
Depends
is depended on by SERVER-39454 Move createIndexes command fully onto... Closed
Related
is related to SERVER-42242 Acquire locks by collection UUID duri... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Execution Team 2019-07-29
Participants:
Linked BF Score: 15

 Description   

When IndexBuildsCoordinator::_registerAndSetUpIndexBuild() is acquiring the collection in order to begin an index build on a standalone or primary node, it may be possible for catalog changes to cause the index build to be initialized on a collection with a different UUID from what is provided to the IndexBuildsCoordinator.

This is applies only when the IndexBuildsCoordinator is enabled for the createIndexes command.



 Comments   
Comment by Githook User [ 22/Jul/19 ]

Author:

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

Message: SERVER-42280 add jstestfuzz to alternate createIndexes builder
Branch: master
https://github.com/mongodb/mongo/commit/46ad2e02d3748635152c0e77e2a7313cfbaa3e46

Comment by Githook User [ 21/Jul/19 ]

Author:

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

Message: SERVER-42280 remove redundant checks from IndexBuildsCoordinator::_registerAndSetUpIndexBuild()
Branch: master
https://github.com/mongodb/mongo/commit/0fddb3efeb0677b6be81fa3615a55d1f2888ed38

Comment by Githook User [ 20/Jul/19 ]

Author:

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

Message: SERVER-42280 IndexBuildsCoordinator::_registerAndSetUpIndexBuild() acquires collection lock by uuid
Branch: master
https://github.com/mongodb/mongo/commit/e3207d3da61af8c132f299c2d7bdd01c9b5433ba

Comment by Githook User [ 19/Jul/19 ]

Author:

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

Message: SERVER-42280 IndexBuildsCoordinator::_registerAndSetUpIndexBuild() retrieves collection namespace after acquiring locks
Branch: master
https://github.com/mongodb/mongo/commit/9245a506013ca8bf7b6d8832db76e136cb296bf1

Comment by Githook User [ 19/Jul/19 ]

Author:

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

Message: SERVER-42280 add db name argument to IndexBuildsCoordinator::startIndexBuild() and _registerAndSetUpIndexBuild()

This sets ReplIndexBuildState::dbName using the db name provided to startIndexBuild() rather than deriving from
the CollectionCatalog lookup result.
Branch: master
https://github.com/mongodb/mongo/commit/ca03514b54e97e6b66e5344a35be3e003d4e9fc8

Comment by Githook User [ 19/Jul/19 ]

Author:

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

Message: SERVER-42280 add index build id to collection missing invariant message
Branch: master
https://github.com/mongodb/mongo/commit/d69f63be5b41b5fb26abb54f8dd60c850b70072e

Comment by Benety Goh [ 18/Jul/19 ]

SERVER-42242 describes an improvement to the current code path for index creation while the issue described in this ticket is dependent on an off-by-default option.

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