github-actions[bot] commented on code in PR #63322:
URL: https://github.com/apache/doris/pull/63322#discussion_r3254488698
##########
be/src/exec/common/variant_util.cpp:
##########
@@ -2247,6 +2285,7 @@ Status parse_and_materialize_variant_columns(Block&
block, const TabletSchema& t
}
// if doc mode is not enabled, no need to parse to doc value column
if (!column.variant_enable_doc_mode()) {
+ configure_decimal_number_preserve_paths(column, &configs[i]);
configs[i].parse_to = ParseConfig::ParseTo::OnlySubcolumns;
Review Comment:
This only configures raw-number preservation for non-doc-mode Variant
columns. Doc-mode Variant columns can still have predefined typed paths (for
example the existing `variant_p0/doc_mode/predefine` suites use
`default_variant_enable_doc_mode = true` with `MATCH_NAME` paths), and that
insert path sets `ParseTo::OnlyDocValueColumn` below. In that mode
`parse_json_to_variant()` still serializes each field into the doc-value binary
column from `getValueAsField()` without these decimal paths configured, so a
high-precision `decimalv3` typed path is stored from the rounded `TYPE_DOUBLE`
and later materialization/cast cannot recover the original token. Please
configure the decimal preserve paths before the doc-mode split as well, and add
a doc-mode predefined decimal regression case.
--
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]