Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add limit push down rule #16403

Merged
merged 3 commits into from
Sep 6, 2024
Merged

Conversation

xudong963
Copy link
Member

@xudong963 xudong963 commented Sep 5, 2024

I hereby agree to the terms of the CLA available at: https://docs.databend.com/dev/policies/cla/

Summary

Tests

  • Unit Test
  • Logic Test
  • Benchmark Test
  • No Test - Explain why

Type of change

  • Bug Fix (non-breaking change which fixes an issue)
  • New Feature (non-breaking change which adds functionality)
  • Breaking Change (fix or feature that could cause existing functionality not to work as expected)
  • Documentation Update
  • Refactoring
  • Performance Improvement
  • Other (please describe):

This change is Reviewable

@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Sep 5, 2024
@xudong963 xudong963 marked this pull request as draft September 5, 2024 15:40
Copy link

what-the-diff bot commented Sep 5, 2024

PR Summary

  • Introduction of RulePushDownLimit in RuleFactory
    This change includes the addition of the RulePushDownLimit in Planner's Optimizer RuleFactory file. This is a key part of the code where we define different rules our code needs to follow.

  • Creation of rule_push_down_limit.rs File
    We've introduced a new file named rule_push_down_limit.rs in the rewrite rule directory. This file holds all the necessary functionality related to the PushDownLimit rule.

  • Implementing RulePushDownLimit
    In the file rule_push_down_limit.rs, we've added the RulePushDownLimit implementation part. This means we've set the instructions for how this rule should work in certain scenarios when the code is being executed.

  • Inclusion of RuleID::PushDownLimit
    We've added RuleID::PushDownLimit in the list of default rewrite rules. This means the newly added rule is now part of the set of rules available by default when rewriting scripts in the planner optimizer.

@github-actions github-actions bot added the pr-feature this PR introduces a new feature to the codebase label Sep 5, 2024
@dosubot dosubot bot added the A-planner Area: planner/optimizer label Sep 5, 2024
@xudong963 xudong963 marked this pull request as ready for review September 6, 2024 02:26
@dosubot dosubot bot added size:L This PR changes 100-499 lines, ignoring generated files. and removed size:M This PR changes 30-99 lines, ignoring generated files. labels Sep 6, 2024
@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Sep 6, 2024
@Dousir9 Dousir9 added this pull request to the merge queue Sep 6, 2024
@BohuTANG BohuTANG removed this pull request from the merge queue due to a manual request Sep 6, 2024
@BohuTANG BohuTANG merged commit a9a6630 into databendlabs:main Sep 6, 2024
88 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-planner Area: planner/optimizer lgtm This PR has been approved by a maintainer pr-feature this PR introduces a new feature to the codebase size:L This PR changes 100-499 lines, ignoring generated files.
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

bug(query): behavior not like MySQL when set LIMIT 0
4 participants