-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Execution
-
Fully Compatible
-
ALL
-
200
-
None
-
None
-
None
-
None
-
None
-
None
-
None
test_api_version_compatibility is failing on the master mainline because internalQueryCheckRegexMatchUTF8Boundary is present in the released IDL snapshots but does not exist in master, with no corresponding entry in IGNORE_REMOVED_PARAMETERS_LIST (buildscripts/private/idl/compatibility_rules.yml). The error is: ID0092: The parameter 'internalQueryCheckRegexMatchUTF8Boundary' was present in the stable API but was removed.
SERVER-127985 added the parameter as a kill switch for its new UTF-8 boundary uassert on the 7.0, 8.0, 8.3 and 9.0 branches, in a new file src/mongo/util/pcre_parameters.idl: a0f5b000847 (v9.0), 027497edb05 (v8.3), ea9f0c7fe0e (v8.0), ca28e223539 (v7.0). The master version of that change (PR #54844, still open) runs the uassert unconditionally and defines no server parameter, so the parameter exists only in the release snapshots. git merge-base --is-ancestor 14855607531 origin/master returns false, confirming no version of SERVER-127985 is on master. Merging #54844 as it stands would not fix this.
Fix: add the parameter to IGNORE_REMOVED_PARAMETERS_LIST. The entry is permanent rather than pending a merge, because master is not going to grow this parameter.
Verified in patch 6a8cb6203ba6c500073b7f15. The idls/r9.0.0 comparison drops from 5 errors to 4 and the parameter no longer appears anywhere in the task log. The task remains red on unrelated errors owned by other tickets: three initialSyncWaitForSyncSourceLastStableRecoveryTs* removals (BF-45873), create.idl ID0065 (BF-45686), and aggregate_command.idl ID0065 against idls/r9.1.0-alpha0.