dajiaohuang opened a new pull request, #2726: URL: https://github.com/apache/orc/pull/2726
### What changes were proposed in this pull request? For FLOAT columns, use the binary32 value represented by the serialized data when updating stripe statistics and Bloom filters. Keep DOUBLE behavior unchanged. Add a predicate-pushdown regression that searches for the stored FLOAT value after writing a value that rounds during binary32 conversion. ### Why are the changes needed? ORC-2225 reports that C++ FLOAT statistics can reflect the pre-narrowed double instead of the value serialized as FLOAT. Using the stored value consistently prevents statistics and Bloom filters from describing a different value than the encoded data. ### How was this patch tested? - Built the C++ `orc-test` target with the task-local Visual Studio 2026 CMake/Ninja/MSVC configuration. - `orc-test.exe --gtest_filter="*testFloatPredicateUsesStoredValue*"` — 1/1 passed. - `orc-test.exe --gtest_filter="TestPredicatePushdown.*"` — 5/5 passed. - CTest `-R "^orc-test$" --output-on-failure` completed successfully. - `git diff --check` passed. ### Was this patch authored or co-authored using generative AI tooling? Generated-by: OpenAI Codex gpt-6-luna -- 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]
