[SERVER-48054]  4.2 nodes that use auth and initial sync will fail to start in 4.4 Created: 08/May/20  Updated: 29/Oct/23  Resolved: 13/May/20

Status: Closed
Project: Core Server
Component/s: Index Maintenance, Upgrade/Downgrade
Affects Version/s: 4.2.0
Fix Version/s: 4.4.0-rc6

Type: Bug Priority: Critical - P2
Reporter: Louis Williams Assignee: Louis Williams
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Duplicate
Related
related to SERVER-49748 Initial sync should clone admin.syste... Closed
is related to SERVER-39471 Remove unique index FCV upgrade codepath Closed
is related to SERVER-48106 Remove all callers of FCV isVersionIn... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Execution Team 2020-05-18
Participants:

 Description   

Initial sync clones collections alphabetically. This means the "admin.system.roles" collection gets cloned after "admin.system.version" which holds the featureCompatibilityVersion document.

The "admin.system.roles" collection has a unique index on {role: 1, db: 1 }. In 4.4 we require all unique indexes to be upgraded to the latest format version. This normally happens as a part of upgrading the FCV to 4.2 using the command or when the index is first created. If an index is created before the FCV is initialized, then it will have an incorrect format version and cause 4.4 to fail to start up.

This affects 4.2 nodes that experience an initial sync and do not go through a restart before upgrading to 4.4. Repro coming soon.

Workaround: Due to the work done in SERVER-45374, restarting an affected node with at least a 4.2.4 binary will self-correct the problem.



 Comments   
Comment by Githook User [ 13/May/20 ]

Author:

{'name': 'Louis Williams', 'email': 'louis.williams@mongodb.com', 'username': 'louiswilliams'}

Message: SERVER-48054 On startup, upgrade all downgraded unique indexes to the latest format version
Branch: v4.4
https://github.com/mongodb/mongo/commit/f61bcc1b3f7f43b9ea02316f51442a5122eeef5a

Comment by Louis Williams [ 11/May/20 ]

We have decided to have 4.4 self-correct this problem at startup, rather than fatally asserting, which is the case today. As far as unique indexes go, we are not aware of any user-visible issues that would be caused by allowing this bug to remain in 4.2.

Comment by Louis Williams [ 08/May/20 ]

louisa.berger we aren't sure yet. We are considering a fix in 4.4 to avoid introducing new upgrade requirements. Be on the lookout for an update when we can make that determination.

Comment by Louisa Berger [ 08/May/20 ]

louis.williams will this mean a fix in 4.4, or will there be a required 4.2.x version we need to upgrade to as an intermediate step?

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