morningman opened a new pull request, #69297: URL: https://github.com/apache/doris/pull/69297
### What problem does this PR solve? Issue Number: None Related PR: #69018, #69174 Problem Summary: **In short.** BE UT fails with `BE BUILD FAIL` for every PR against master: `be/test/exprs/function/function_h3_test.cpp`, added by #69018, no longer compiles since #69174 made `FunctionContext::FunctionStateScope` an `enum class`. This PR spells the 8 affected calls with the scoped enumerators, so the test compiles again. Nothing else changes. **Background.** #69174 (merged 2026-10-18) turned `FunctionContext::FunctionStateScope` into an `enum class` and rewrote every caller from `FunctionContext::FRAGMENT_LOCAL` to `FunctionContext::FunctionStateScope::FRAGMENT_LOCAL`, and the same for `THREAD_LOCAL`. #69018 (merged 2026-10-19) added an H3 function test written against the old, unscoped names. The two PRs were merged independently; together they leave a test on master that does not compile. The BE UT pipeline merges each PR into the latest master before it builds `doris_be_test`, so the break hits every PR, whatever it changes. **The problem, and what it cost.** Since #69261 fixed the other test break of the day (left by #68447), every BE UT build for a PR against master stops at this file, for example [build 1073803](http://43.132.222.7:8111/viewLog.html?buildId=1073803) (#69257, merged into master `41a58afba2e`): ``` FAILED: [code=1] test/CMakeFiles/doris_be_test.dir/exprs/function/function_h3_test.cpp.o ../test/exprs/function/function_h3_test.cpp:66:62: error: no member named 'FRAGMENT_LOCAL' in 'doris::FunctionContext' ../test/exprs/function/function_h3_test.cpp:67:62: error: no member named 'THREAD_LOCAL' in 'doris::FunctionContext' ... 8 errors generated. ninja: build stopped: subcommand failed. ``` No BE unit test runs for those PRs, so their BE UT result says nothing about the PR until this is fixed. **How this PR fixes it.** The 8 `open` / `close` calls in `function_h3_test.cpp` now use `FunctionContext::FunctionStateScope::FRAGMENT_LOCAL` / `THREAD_LOCAL`, as #69174 did for the other function tests. The test logic is unchanged. **Results.** `-fsyntax-only` with the flags of each file's own entry in `be/ut_build_ASAN/compile_commands.json` (clang 22, `-DBE_TEST`): | File | master `41a58afba2e` | this PR | |---|---|---| | `function_h3_test.cpp` | the 8 errors CI reports | compiles | | the 4 test files #69261 fixed (`data_type_serde_arrow_test.cpp`, `data_type_variant_v2_serde_jsonb_test.cpp`, `variant_v2_execution_test.cpp`, `vparquet_writer_test.cpp`) | compile | compile (not touched) | | `function_array_zip_test.cpp` (baseline, not touched) | compiles | compiles | ### Release note None ### Check List (For Author) - Test <!-- At least one of them must be included. --> - [ ] Regression test - [ ] Unit Test - [x] Manual test (add detailed scripts or steps below) - The `-fsyntax-only` checks in the table above. `doris_be_test` was not built or run locally; the BE UT pipeline of this PR builds it and runs `FunctionH3Test`. - [ ] No need to test or manual test. Explain why: - [ ] This is a refactor/code format and no logic has been changed. - [ ] Previous test can cover this change. - [ ] No code files have been changed. - [ ] Other reason <!-- Add your reason? --> - Behavior changed: - [x] No. - [ ] Yes. <!-- Explain the behavior change --> - Does this need documentation? - [x] No. - [ ] Yes. <!-- Add document PR link here. eg: https://github.com/apache/doris-website/pull/1214 --> ### Check List (For Reviewer who merge this PR) - [ ] Confirm the release note - [ ] Confirm test cases - [ ] Confirm document - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into --> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
