kbendick commented on a change in pull request #2062:
URL: https://github.com/apache/iceberg/pull/2062#discussion_r554928604
##########
File path:
api/src/main/java/org/apache/iceberg/expressions/InclusiveMetricsEvaluator.java
##########
@@ -372,6 +372,38 @@ public Boolean or(Boolean leftResult, Boolean rightResult)
{
return ROWS_MIGHT_MATCH;
}
+ @Override
+ public <T> Boolean notStartsWith(BoundReference<T> ref, Literal<T> lit) {
Review comment:
The other place where `!startsWith` would be correct is in the current
implementation of `BoundLiteralPredicate`, though again that's a simple one
line (and I've also marked down some concerns I have with the implementation as
it currently is written). In the case of `BoundLiteralPredicate` though,
regardless of the final implementation of `startsWith`, since we're not dealing
with `file might contain x` but just a single value comparison, `!startsWith`
would be correct. But again, it's only one line and we don't save much in terms
of complexity.
Outside of that, it seems that substituting `not(startsWith)` wouldn't work.
As mentioned, most of the time we've asssumed that any `NOT` nodes have been
removed from the AST of the query via `RewriteNot`.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]