[
https://issues.apache.org/jira/browse/IGNITE-28598?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Evgeny Stanilovsky updated IGNITE-28598:
----------------------------------------
Labels: idea ignite-2 ise (was: ignite-2 ise)
> Calcite engine. Indexes from NO_INDEX hint still can be used in plan
> --------------------------------------------------------------------
>
> Key: IGNITE-28598
> URL: https://issues.apache.org/jira/browse/IGNITE-28598
> Project: Ignite
> Issue Type: Improvement
> Affects Versions: 2.17, 2.18
> Reporter: Evgeny Stanilovsky
> Priority: Major
> Labels: idea, ignite-2, ise
> Fix For: 2.19
>
>
> Indexes from NO_INDEX hint still can be found in the execution plan.
> For example, if we try to involve only "T1_IDX" scan:
> {noformat}
> @Test
> public void testNoIndexHint() {
> executeSql("CREATE TABLE t1(i2 INTEGER, i3 INTEGER)");
> for (int i = 0; i < 100; ++i)
> executeSql("INSERT INTO t1 VALUES (?, ?)", i, i);
> executeSql("CREATE INDEX t1_idx ON t1(i3)");
> assertQuery("SELECT /*+ NO_INDEX(_key_PK),
> DISABLE_RULE('LogicalTableScanConverterRule') */ i3 FROM t1 where i2=2 or
> i3=2")
> .matches(QueryChecker.containsIndexScan("PUBLIC", "T1", "T1_IDX"))
> .check();
> }
> {noformat}
> It will fail.
> Seems it`s due to case sensitivity comparison bug present in:
> org.apache.ignite.internal.processors.query.calcite.rule.logical.ExposeIndexRule#processHints
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)