[BugFix] Decouple aggregate rewrite and output dictification logic to fix multi-input aggregate bugs#74754
[BugFix] Decouple aggregate rewrite and output dictification logic to fix multi-input aggregate bugs#74754farhad-celo wants to merge 1 commit into
Conversation
|
Module risk briefing for PR #74754 —
|
352ffda to
2411aa4
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. Nice work! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
2411aa4 to
c9136f3
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c9136f3540
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
c9136f3 to
12b9eb1
Compare
|
@codex review |
|
Codex Review: Didn't find any major issues. 🚀 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
12b9eb1 to
e7eff68
Compare
e7eff68 to
6789ca0
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6789ca090d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
6789ca0 to
2c3fb14
Compare
[FE Incremental Coverage Report]✅ pass : 42 / 42 (100.00%) file detail
|
2c3fb14 to
bfed010
Compare
|
@codex review |
|
Module-risk briefing for PR #74754 (low-cardinality dictification —
|
…lity agg output. Signed-off-by: Farhad Shahmohammadi <f.shahmohammadi@celonis.com>
bfed010 to
ff6e8f2
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bfed010bbe
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Module-risk briefing for PR #74754 — history-grounded review focus for the sql/optimizer — diff-aligned pitfalls (from 20 merged bugfixes)Pitfall: Low-cardinality/dictification type confusion · [[e:pr/StarRocks_starrocks/74159]] [[e:pr/StarRocks_starrocks/72418]] [[e:pr/StarRocks_starrocks/72027]] The most recent fix in this exact area (PR #74159) was about Key risk to verify:
Pitfall: Low-cardinality + CTE + UNNEST · [[e:pr/StarRocks_starrocks/72418]] [[e:pr/StarRocks_starrocks/72027]] This PR modifies both The new tests ( This is a history-backed heuristic derived from past bugfixes in the same module — verify each point against the actual change before acting on it. |
[Java-Extensions Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
[BE Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
Why I'm doing:
Currently, the dictification framework uses the same logic to decide both whether an aggregate should be rewritten and whether its output should be dictified. This overlapping logic can cause bugs in aggregates with multiple inputs, such as
ARRAY_AGG(NON_LOW_CARD_COLUMN ORDER BY LOW_CARD_COLUMN). This PR decouples these two pieces of logic.What I'm doing:
DecodeInfoto distinguish between string output columns and the specific aggregations being processed.checkDependsOnExpr(), making it the single source of truth for this behavior across the entire framework.Fixes #issue
What type of PR is this:
Does this PR entail a change in behavior?
If yes, please specify the type of change:
Checklist:
Bugfix cherry-pick branch check: