Skip to content

branch-4.0: [fix](fe) Reject TopN in correlated scalar subquery #64251 - #64350

Merged
morningman merged 1 commit into
branch-4.0from
auto-pick-64251-branch-4.0
Jun 24, 2026
Merged

branch-4.0: [fix](fe) Reject TopN in correlated scalar subquery #64251#64350
morningman merged 1 commit into
branch-4.0from
auto-pick-64251-branch-4.0

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Cherry-picked from #64251

@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?

@hello-stephen

Copy link
Copy Markdown
Contributor

run buildall

@hello-stephen

Copy link
Copy Markdown
Contributor

FE UT Coverage Report

Increment line coverage 83.33% (5/6) 🎉
Increment coverage report
Complete coverage report

@github-actionsgithub-actionsBot added the approved Indicates a PR has been approved by one committer. label Jun 24, 2026
@github-actions

Copy link
Copy Markdown
ContributorAuthor

PR approved by at least one committer and no changes requested.

@github-actions

Copy link
Copy Markdown
ContributorAuthor

PR approved by anyone and no changes requested.

### What problem does this PR solve?
Related PR: #39471
Problem Summary:
Correlated scalar subqueries with `ORDER BY ... LIMIT 1` were treated
like plain `LIMIT 1` subqueries. Analysis eliminated the root
`LogicalLimit`, which also discarded the TopN semantics instead of
rejecting this unsupported correlated-subquery shape.
This change only eliminates a correlated scalar subquery's `LIMIT 1`
when the limit does not wrap a `LogicalSort`. A TopN remains in the
analyzed plan and is rejected by the existing correlated-subquery
validation.
FE unit and regression tests verify that `ORDER BY ... LIMIT 1` is
rejected, while the existing plain `LIMIT 1` coverage continues to
verify the supported path.
### Release note
Reject correlated scalar subqueries containing `ORDER BY` with `LIMIT 1`.
@morningman
morningmanforce-pushed the auto-pick-64251-branch-4.0 branch from ff257c1 to 2809faaCompareJune 24, 2026 09:46
@morningman

Copy link
Copy Markdown
Contributor

run buildall

@morningman
morningman merged commit b8e71e7 into branch-4.0Jun 24, 2026
28 of 32 checks passed
@github-actions
github-actionsBot deleted the auto-pick-64251-branch-4.0 branch June 24, 2026 14:55
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approvedIndicates a PR has been approved by one committer.reviewed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@hello-stephen@morningman@morrySnow