-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
remove Operator::{Like,NotLike,ILike,NotILike} #4792
Conversation
Thank you 🙏 @unconsolable -- I plan to review this one carefully tomorrow |
664879d
to
95a266c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @unconsolable -- this is a very beautiful first PR 🏆
I had a few minor suggestions but overall this looks very close to mergable.
Thank you so much 🙏
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @unconsolable and @crepererum
🚀 |
Benchmark runs are scheduled for baseline = 24023b5 and contender = 702e117. 702e117 is a master commit associated with this PR. Results will be available as each benchmark for each run completes. |
Which issue does this PR close?
Closes #4765 .
Rationale for this change
See issue.
What changes are included in this PR?
Operator::{Like,NotLike,ILike,NotILike}
datafusion_expr::expr::Expr::{like, not_like, ilike, not_ilike}
, returnExpr::{Like, ILike}
version.TypeCoercionRewriter
uselike_coercion
directly, bypassOperator::Like
etc.LikeExpr
indatafusion_physical_expr::expressions
, bypassOperator::Like
etc. Also convertExpr::{like, not_like, ilike, not_ilike}
to thisLikeExpr
PhysicalExprNode
proto, make corresponding change infrom_proto
&to_proto
Are these changes tested?
TypeCoercionRewriter
andLikeExpr
are tested correspondingly.datafusion::physical_plan::planner::tests::errors()
, tests forlike/ilike/not like/not ilike
are removed, as forExpr::Like
andExpr::ILike
,coerce_types
are not performed inExpr::get_type
https://github.com/apache/arrow-datafusion/blob/54ae4323a730a4a34c6b5f638e2083f0c3fe5dcc/datafusion/expr/src/expr_schema.rs#L128-L130
Are there any user-facing changes?
No.