Closed CookiePieWw closed 14 hours ago
[!IMPORTANT]
Review skipped
Auto reviews are disabled on this repository.
Please check the settings in the CodeRabbit UI or the
.coderabbit.yaml
file in this repository. To trigger a single review, invoke the@coderabbitai review
command.You can disable this status message by setting the
reviews.review_status
tofalse
in the CodeRabbit configuration file.
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
I'm curious about if this case will only generate a static plan without any input, or it will have other cases of mismatch. If not we can just drop the input and evaluate the static plan instead.
I'm curious about if this case will only generate a static plan without any input, or it will have other cases of mismatch. If not we can just drop the input and evaluate the static plan instead.
The case I came across just generate a static plan.
Initially I thought there're cases that part of the params are optimized and others are kept, thus we cannot match the params given by users to the optimized plan. But I'm not sure though, it's up to datafusion's optimization rules.
Attention: Patch coverage is 60.00000%
with 8 lines
in your changes missing coverage. Please review.
Project coverage is 83.74%. Comparing base (
3633f25
) to head (fbcc37d
). Report is 9 commits behind head on main.
🚨 Try these New Features:
I hereby agree to the terms of the GreptimeDB CLA.
Refer to a related PR or issue link (optional)
4970
What's changed and what's your intention?
Datafusion may convert the prepared sql to an optimized plan without initial params, so that we can't confirm if the param is needed when executing the prepared plan.
This patch introduces a workaroud that just drop the optimized plan if the param number mismatches and use the initial sql. It may affect the performance of the sql, but previously these sqls even cannot execute.
e.g.
Checklist