[test](fuzzy) Keep FileScannerV2 enabled - #67153
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
|
/review |
There was a problem hiding this comment.
Requesting changes for one correctness gap.
Critical checkpoints:
- Correctness and lifecycle: fuzzy connection creation and COM_RESET_CONNECTION clone the mutable, persisted global session-variable default before fuzzy initialization, so an inherited false is no longer replaced and the promised V2-only fuzzy invariant is not guaranteed.
- Runtime and compatibility: the surviving false is forwarded through TQueryOptions and selects legacy V1 in BE. Explicit per-session V1 overrides issued after initialization remain available and are not the problem.
- Tests: the added unit test starts from the Java field default true and does not cover the production inherited-false path. Per runner instructions, no local build or test was run. All completed applicable CI checks currently pass or are intentionally skipped; compile and FE UT are still pending.
- Diagnostics, security, and performance: no additional issue found. Removing the fuzzy annotation only stops a non-randomized constant from appearing in fuzzy diagnostics; normal forwarding and changed-variable audit reporting remain intact.
- User focus: no additional review focus was provided.
Review completion: two full normal/risk-focused rounds converged with no additional unique findings; the inline issue below is the sole blocker.
|
|
||
| @Test | ||
| public void testFileScannerV2StaysEnabledInFuzzyMode() throws Exception { | ||
| SessionVariable sessionVar = new SessionVariable(); |
There was a problem hiding this comment.
This only verifies the pristine Java default. Real connections clone VariableMgr.defaultSessionVariable before initFuzzyModeVariables(); that default is mutable via SET GLOBAL and persisted/replayed. If it is false, fuzzy initialization now leaves it false and the forwarded option still selects legacy V1, so fuzzy sessions are not actually guaranteed to stay on V2. Please exercise an inherited false here and restore an unconditional enableFileScannerV2 = true assignment in initFuzzyModeVariables().
FE Regression Coverage ReportIncrement line coverage |
|
PR approved by anyone and no changes requested. |
|
PR approved by at least one committer and no changes requested. |
What problem does this PR solve?
Problem Summary:
Fuzzy session initialization currently randomizes
enable_file_scanner_v2, so regression runs may use either FileScannerV2 or the legacy V1 path. Going forward, fuzzy regression testing should cover only the default FileScannerV2-enabled path.This change removes the variable from fuzzy randomization and adds a unit test that protects the enabled invariant.
Release note
None
Check List (For Author)
Test
Behavior changed:
enable_file_scanner_v2enabled instead of randomizing it.Does this need documentation?
Check List (For Reviewer who merge this PR)