[DOCS-14257] Investigate changes in SERVER-54608: dropIndexes needs to make the same assertions on primary and secondary nodes Created: 26/Feb/21  Updated: 13/Nov/23  Resolved: 19/Aug/21

Status: Closed
Project: Documentation
Component/s: manual, Server
Affects Version/s: None
Fix Version/s: 4.9.0, 4.4.5, Server_Docs_20231030, Server_Docs_20231106, Server_Docs_20231105, Server_Docs_20231113

Type: Task Priority: Major - P3
Reporter: Backlog - Core Eng Program Management Team Assignee: Ian Fogelman
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Documented
documents SERVER-54608 dropIndexes needs to make the same as... Closed
Participants:
Days since reply: 2 years, 25 weeks ago
Epic Link: DOCSP-15042

 Description   

Description

Downstream Change Summary

The dropIndexes command cannot drop any ready indexes while there are any in-progress index builds.

Description of Linked Ticket

The applyOps path for dropIndexes makes an assertion that the primary does not. This can lead to a bug that generates an invalid oplog sequence and causes all secondaries to stop replicating.

There is a bug that can be described by the following sequence in its simplest form:

  • Start building an index A
  • dropIndexes aborts A and yields its locks
  • Start building a new index build on A and commit
  • Start building an index B
  • dropIndexes reacquires its locks and sees that A is not in progress anymore, so it moves on to replicate a dropIndexes oplog entry instead.
  • The secondary sees the dropIndexes oplog entry for A but blocks in the applyOps path because B is still in progress, something that did not happen on the primary.

We need to either a) assert on the primary that no index builds are in progress when a single index is dropped, or b) remove the assertion for the applyOps path.

Scope of changes

Impact to Other Docs

MVP (Work and Date)

Resources (Scope or Design Docs, Invision, etc.)



 Comments   
Comment by Githook User [ 18/Aug/21 ]

Author:

{'name': 'ian fogelman', 'email': 'ian.fogelman@mongodb.com', 'username': 'ianf-mongodb'}

Message: DOCS-14257 db.collection.dropIndexes() 5.0 blurb update
Branch: master
https://github.com/mongodb/docs/commit/1526a052a8e2e9c3ce459efc9f24933c27758ee8

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