Ilya Soin created FLINK-40116:
---------------------------------

             Summary: Support more predicates for filter pushdown during 
savepoint scan
                 Key: FLINK-40116
                 URL: https://issues.apache.org/jira/browse/FLINK-40116
             Project: Flink
          Issue Type: Improvement
          Components: API / State Processor
    Affects Versions: 2.4.0
            Reporter: Ilya Soin


FLINK-39637 added predicate push-down when querying state using the _savepoint_ 
connector. The filter pushdown currently supports the following predicates:
 * exact: ({_}WHERE k = 5{_} /  _k IN (1,2,3)_ / \{_}k = 1 OR k = 2 OR k = 3{_})
 * single open range ({_}WHERE k > 5{_} / _k >= 5_ / _k < 10_ / {_}k <= 10{_})
 * single closed range ({_}WHERE k BETWEEN 3 AND 8{_} / _k >= 3 AND k <= 8_ )
 * intersection of ranges, resolved during planning to a final range ({_}WHERE 
k > 5{_} and _k > 6_ AND {_}k < 9{_})

The filter pushdown logic can be improved by supporting more predicates:
 * exclusion ({_}WHERE k <> 5{_} / _k NOT IN (3, 7)_ / \{_}k NOT BETWEEN 10 AND 
20{_})
 * union of exact and range ({_}k = 1 OR k > 5{_} )
 * union of ranges ({_}k < 5 OR k > 100{_})
 * intersection of range and exact (narrowing to exact or empty: _WHERE k = 5 
AND k > 3_ / _WHERE K = 5 and K > 6)_
 * intersection of exact and exclusion ({_}WHERE k IN (1,2,3) AND k <> 2{_})
 * intersection of range and exclusion ({_}WHERE k BETWEEN 1 AND 10 AND k <> 
5{_})



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to