You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Aleksey Plekhanov (Jira)" <ji...@apache.org> on 2022/08/30 14:26:00 UTC

[jira] [Created] (IGNITE-17597) Calcite engine. Indexes for table can't be used after columns added or dropped

Aleksey Plekhanov created IGNITE-17597:
------------------------------------------

             Summary: Calcite engine. Indexes for table can't be used after columns added or dropped
                 Key: IGNITE-17597
                 URL: https://issues.apache.org/jira/browse/IGNITE-17597
             Project: Ignite
          Issue Type: Bug
            Reporter: Aleksey Plekhanov
            Assignee: Aleksey Plekhanov
             Fix For: 2.14


We recreate tables, but not copy indexes in schema change listener (\{{SchemaHolderImpl#onColumnsAdded}}, \{{SchemaHolderImpl#onColumnsDropped}})

Reproducer:

 
{code:java}
public void testIndexAfterColumnsChange() {
    sql("create table t(id int)");
    sql("create index t_idx on t(id)");

    for (int i = 0; i < 100; i++)
        sql("insert into t values (?)", i);

    assertQuery("select * from t where id = 0")
        .matches(QueryChecker.containsIndexScan("PUBLIC", "T", "T_IDX"))
        .check();

    sql("alter table t add column new_col int");

    assertQuery("select * from t where id = 0")
        .matches(QueryChecker.containsIndexScan("PUBLIC", "T", "T_IDX"))
        .check();
} {code}
 

 



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