[
https://issues.apache.org/jira/browse/IGNITE-10291?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16691851#comment-16691851
]
Anton Kalashnikov commented on IGNITE-10291:
--------------------------------------------
I have found follow unconsistency:
In current moment during cache start in
IgniteH2Indexind#createTable(tbl.createUserIndexes()) we do not distinguish
difference between restored H2TreeIndex and new one. As result instead of
rebuilding of index we register correct empty index.
In my opinion, on start moment we should be able to check consistency between
real data and index. But I don't sure about right way to do it more correcly.
[~vozerov], [~agoncharuk] can you help with it?
> Unable to find row by index created on partial baseline topology
> ----------------------------------------------------------------
>
> Key: IGNITE-10291
> URL: https://issues.apache.org/jira/browse/IGNITE-10291
> Project: Ignite
> Issue Type: Bug
> Components: cache, sql
> Affects Versions: 2.4, 2.5, 2.6
> Reporter: Pavel Vinokurov
> Priority: Critical
> Attachments: Reproducer.java
>
>
> Steps to reproduce:
> 1. Start two nodes cluster with persistence.
> 2. Create table
> CREATE TABLE PERSON (
> FIRST_NAME VARCHAR,
> LAST_NAME VARCHAR,
> ADDRESS VARCHAR,
> LANG VARCHAR,
> BIRTH_DATE TIMESTAMP,
> CONSTRAINT PK_PESON PRIMARY KEY (FIRST_NAME,LAST_NAME,ADDRESS,LANG)
> ) WITH "key_type=PersonKeyType, CACHE_NAME=PersonCache,
> value_type=PersonValueType,
> AFFINITY_KEY=FIRST_NAME,template=PARTITIONED,backups=1"
> Insert 1000 rows.
> 3. Stop the second node.
> 4. Create index
> create index PERSON_FIRST_NAME_IDX on PERSON(FIRST_NAME)
> 5. Start the second node
> 6. Perform select query for each row:
> select * from PERSON use index(PERSON_FIRST_NAME_IDX)
> where
> FIRST_NAME=?
> and LAST_NAME=?
> and ADDRESS=?
> and LANG = ?
> Result: The select doesn't return row in half of cases.
> The reproducer is attached.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)