Skip to content

branch-4.2: [feature](variant) Support relational operations for Variant - #68882

Open
eldenmoon wants to merge 2 commits into
apache:branch-4.2from
eldenmoon:branch-pick-67675-to-4.2
Open

eldenmoon wants to merge 2 commits into
apache:branch-4.2from
eldenmoon:branch-pick-67675-to-4.2

Conversation

@eldenmoon

Copy link
Copy Markdown
Member

cherry-pick #67675

…anch-4.2

### What problem does this PR solve?

Related PR: apache#67675

Problem Summary: Backport Variant V2 canonical equality, sorting and relational
operations, runtime-filter guards and JSON function support to branch-4.2.
Preserve the default disabled V2 configuration, legacy Variant restrictions,
target serialization APIs and Variant properties. Do not restore schema-template
auto cast. Restrict TIMESTAMPTZ paths in newly defined Variant schema templates.

### Release note

When Variant V2 is enabled, Variant values support equality joins and ordering,
and can be passed to JSON functions. Variant V2 remains disabled by default.

### Check List (For Author)

- Test: ASAN BE/FE builds; 114 related BE unit tests; 86 FE unit tests; 25 regression suites passed.
    - Expanded BE run: 858 passed, 5 skipped, 1 unchanged V1 byte_size golden mismatch; reproduced alone.
    - clang-format 16 and FE Checkstyle passed. clang-tidy blocked by existing NOLINTEND and analyzer crash.
- Behavior changed: Yes, enable relational and JSON operations for Variant V2.
- Does this need documentation: No, backport of apache#67675.

(cherry picked from commit cd1508c)
…bility

### What problem does this PR solve?

Related PR: apache#67675

Problem Summary: Backport relational, JSON, canonical ordering and runtime-filter
coverage. Enable Variant V2 temporarily in its suites and restore the prior
configuration. Retain legacy Variant canonical and scalar coercion coverage and
add a regression for V1 ordering, join restrictions, comparison and JSON extraction.
Adapt benchmark phases to temporarily enable V2 while ordinary load runs retain
the configured Variant version.

### Release note

None

### Check List (For Author)

- Test: 114 related ASAN BE unit tests; 86 FE unit tests; 25 regression suites passed.
    - Expanded BE run: 858 passed, 5 skipped, 1 unchanged V1 byte_size golden mismatch; reproduced alone.
    - Golden for the new V1 compatibility suite generated by run-regression-test.sh.
- Behavior changed: No, test coverage and benchmark configuration only.
- Does this need documentation: No, benchmark notes updated in this commit.
@eldenmoon
eldenmoon requested a review from yiguolei as a code owner October 10, 2026 10:22
@hello-stephen

Copy link
Copy Markdown
Contributor

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants