[SERVER-66327] Remove the setFeatureCompatibilityVersion code in the run_validate_collections.js hook Created: 09/May/22  Updated: 29/Oct/23  Resolved: 23/May/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: 6.0.0-rc4
Fix Version/s: 6.0.0-rc8, 6.1.0-rc0

Type: Task Priority: Major - P3
Reporter: Gregory Wlodarek Assignee: Gregory Wlodarek
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
Related
Backwards Compatibility: Fully Compatible
Backport Requested:
v6.0
Sprint: Execution Team 2022-05-30
Participants:
Linked BF Score: 31

 Description   

This code was added in SERVER-36718 because it was expected that a big index key inserted in FCV 4.2 causes the index validation in FCV 4.0 to fail.

validate should no longer fail because of the server running with an FCV less than the latest version.

There's also a build failure where the fuzzer creates a measurement index on a time-series collection and cannot complete a previously failed FCV downgrade, causing the hook to fail.



 Comments   
Comment by Githook User [ 24/May/22 ]

Author:

{'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}

Message: SERVER-66327 Omit forceValidationWithFeatureCompatibilityVersion in the jstestfuzz yaml configs
Branch: v6.0
https://github.com/mongodb/mongo/commit/27921f09fb1f2125a9c2da1b36bde75993c21100

Comment by Githook User [ 23/May/22 ]

Author:

{'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}

Message: SERVER-66327 Omit forceValidationWithFeatureCompatibilityVersion in the jstestfuzz yaml configs
Branch: master
https://github.com/mongodb/mongo/commit/c18c0dd8ddfc6cfbd54f8dd095488dd391ea026e

Comment by Max Hirschhorn [ 09/May/22 ]

This code was added in SERVER-36718 because it was expected that a big index key inserted in FCV 4.2 causes the index validation in FCV 4.0 to fail.

validate should no longer fail because of the server running with an FCV less than the latest version.

I'm confused about the "validate should no longer fail" part of this description. For some historical context, going back to decimal128 in MongoDB 3.4 (SERVER-25889), the server has typically had the validate command report an error in the lower FCV for any data format which the lower binVersion would be unable to process. This gives a path for customers who are extra cautious and willing to spend the time to know what additional work is needed to safely downgrade their binaries beyond running setFeatureCompatibilityVersion.

As mentioned in this comment on SERVER-43627, if the validate command has the same behavior in both lower FCV and higher FCV then we can have the jstestfuzz*.yml files omit TestData.forceValidationWithFeatureCompatibilityVersion = latestFCV.

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