[SERVER-73858] Inconsistent error handling in singe-phase index builds during oplog application Created: 09/Feb/23  Updated: 29/Oct/23  Resolved: 13/Feb/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 7.0.0-rc0, 6.3.0-rc1

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:
Backports
Depends
Problem/Incident
Related
related to SERVER-73442 The type of the "bits" field can diff... Backlog
related to SERVER-73874 clean up geo_small_large.js and initi... Closed
is related to SERVER-72618 Untimestamped writes to the catalog c... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v6.3
Sprint: Execution Team 2023-02-20
Participants:
Linked BF Score: 58

 Description   

When we apply single-phase createIndexes oplog entries during oplog application, there are certain index creation errors that are safe to ignore (based on assumptions about the current state of the database and future oplog entries to apply). However, our optimization for the empty collection case has a slightly different exclusion list from the non-empty collection case.

We should resolve this inconsistency as this may have implications for initial sync and tenant migration use cases.



 Comments   
Comment by Githook User [ 14/Feb/23 ]

Author:

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

Message: SERVER-73858 Oplog batch application index builds on an empty collection should ignore same errors as non-empty collection case

(cherry picked from commit 0b0048e3ecb2a05eb68e6e36327ba50024bf7d9d)
Branch: v6.3
https://github.com/mongodb/mongo/commit/8b06b20e74a8ae34f4e41add8f152b9d1bcbbffc

Comment by Githook User [ 14/Feb/23 ]

Author:

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

Message: SERVER-73858 add IndexBuildsCoordinator::isCreateIndexesErrorSafeToIgnore()

(cherry picked from commit 944b024917b8ce7179bab74b357d4bad71e2e33a)
Branch: v6.3
https://github.com/mongodb/mongo/commit/f8768543817db200e98be399dd2520e190ba3955

Comment by Githook User [ 14/Feb/23 ]

Author:

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

Message: SERVER-73858 add js test for geo 2d index options conflict during initial sync

(cherry picked from commit 3d7dfa8ad0606362be739effd43dd01b5b8048d9)
Branch: v6.3
https://github.com/mongodb/mongo/commit/d3b2ad3244be249a7abe70fabea2e97d174da1d5

Comment by Githook User [ 11/Feb/23 ]

Author:

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

Message: SERVER-73858 Oplog batch application index builds on an empty collection should ignore same errors as non-empty collection case
Branch: master
https://github.com/mongodb/mongo/commit/0b0048e3ecb2a05eb68e6e36327ba50024bf7d9d

Comment by Githook User [ 11/Feb/23 ]

Author:

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

Message: SERVER-73858 add IndexBuildsCoordinator::isCreateIndexesErrorSafeToIgnore()
Branch: master
https://github.com/mongodb/mongo/commit/944b024917b8ce7179bab74b357d4bad71e2e33a

Comment by Githook User [ 10/Feb/23 ]

Author:

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

Message: SERVER-73858 add js test for geo 2d index options conflict during initial sync
Branch: master
https://github.com/mongodb/mongo/commit/3d7dfa8ad0606362be739effd43dd01b5b8048d9

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