[ https://issues.apache.org/jira/browse/IGNITE-18635?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yury Gerzhedovich updated IGNITE-18635: --------------------------------------- Epic Link: IGNITE-19479 > Sql. Extra comparison in case of index scan and simple predicate. > ----------------------------------------------------------------- > > Key: IGNITE-18635 > URL: https://issues.apache.org/jira/browse/IGNITE-18635 > Project: Ignite > Issue Type: Improvement > Components: sql > Affects Versions: 3.0.0-beta1 > Reporter: Evgeny Stanilovsky > Priority: Major > Labels: calcite3-required, ignite-3 > > IndexScanNode contains : > {noformat} > IgniteIndex schemaIndex > RangeIterable<RowT> rangeConditions > Predicate<RowT> filters > {noformat} > Seems that for some simple predicates no additional filters comparison is > needed. > For example : > {noformat} > create table t (a int); > create index a_idx on t (a); > select a from t where a = 1; > {noformat} > If correct index scan is used here, no need in additional comparisons: > {noformat} > if (filters != null && !filters.test(row)) { > continue; > } > {noformat} > Seems for more complex cases: sort indexes and range this optimization still > applicable: > {noformat} > create table t (a int); > create index a_idx on t (a); > select a from t where a > 5 and a < 10; > {noformat} -- This message was sent by Atlassian Jira (v8.20.10#820010)