eldenmoon opened a new pull request, #63322:
URL: https://github.com/apache/doris/pull/63322
### What problem does this PR solve?
Issue Number: CIR-20240
Related PR: None
Problem Summary: Variant JSON parsing materialized high precision
decimal-like numbers as double before typed decimal paths were cast, which lost
precision. Preserve raw numeric tokens for decimal-sensitive Variant path
extraction and cast typed decimal paths from exact text while keeping Variant
nullable array structure.
### Release note
Fix Variant typed decimal precision loss when parsing high precision JSON
numbers.
### Check List (For Author)
- Test:
- Build: BUILD_TYPE=ASAN USE_MEM_TRACKER=ON ./build.sh --be --fe
- Unit Test: ./run-be-ut.sh --run
--filter='JsonParserTest.*:ColumnVariantTest.parse_high_precision_decimal_for_typed_path'
- Regression test: env -u http_proxy -u https_proxy -u HTTP_PROXY -u
HTTPS_PROXY -u all_proxy -u ALL_PROXY NO_PROXY=127.0.0.1,localhost,10.26.20.3
no_proxy=127.0.0.1,localhost,10.26.20.3 ./run-regression-test.sh --conf
tmp/regression-conf.auto.groovy --run -d variant_p0/predefine -s
test_variant_high_precision_decimal
- Format Check: build-support/clang-format.sh;
build-support/check-format.sh
- Static Check: build-support/run-clang-tidy.sh --build-dir
be/ut_build_ASAN (attempted; failed due existing/environment diagnostics
including missing stddef.h and unrelated existing readability-function-size
warnings)
- Behavior changed: Yes (Variant typed decimal paths cast preserved raw JSON
number text instead of rounded double for precision-sensitive numeric tokens)
- Does this need documentation: No
--
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]