XuPengfei-1020 opened a new pull request, #36326: URL: https://github.com/apache/doris/pull/36326
## Proposed changes Original extractor(TryEliminateUninterestedPredicates.java) caused some errors while try to derive the expressions which can be used for pruning partitions. I tried to write a new extractor(and with unit tests) for pruning partitions, it is more simple and reliable (I think). The theory of extractor is pretty simple: A:Sort the expression in two kinds: 1. evaluable-expression (let's mark it as E). Expressions that can be evaluated in the partition pruning stage. In the other word: not contains non-partition slots or deterministic expression. 2. un-evaluable-expression (let's mark it as UE). Expressions that can NOT be evaluated in the partition pruning stage. In the other word: contains non-partition slots or deterministic expression. B: Travel the predicate, only point on AND and OR operator, following the rule: (E and UE) -> (E and TRUE) -> E (UE and UE) -> TRUE (E and E) -> (E and E) (E or UE) -> TRUE (UE or UE) -> TRUE (E or E) -> (E or E) <!--Describe your changes.--> -- 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. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org