[SERVER-44344] legacy map reduce fails to recreate indexes in existing output collection with two phase index builds Created: 31/Oct/19  Updated: 29/Oct/23  Resolved: 04/Nov/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-43692 enable two phase index builds by default Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Execution Team 2019-11-04
Participants:

 Description   

When given an output collection that already exists, the map reduce command will copy the indexes from the original output collection. With two phase index builds, the information in the startIndexBuild and commitIndexBuild oplog entries may contain indexes that already exist in the temporary collection used by map reduce. This may result in secondaries silently ignoring the two phase index build commands due to the IndexAlreadyExists error.



 Comments   
Comment by Githook User [ 02/Nov/19 ]

Author:

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

Message: SERVER-44344 map reduce filters existing indexes on temp collection prior to index creation
Branch: master
https://github.com/mongodb/mongo/commit/293fe1ce7153e62ffcd59dee0dabf1f28c2ccbe1

Comment by Githook User [ 01/Nov/19 ]

Author:

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

Message: SERVER-44344 add MapReduce unit test for preserving indexes in existing output collection
Branch: master
https://github.com/mongodb/mongo/commit/21945fb7effa4d08b0d5c59119a9170cb099e484

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