[ 
https://issues.apache.org/jira/browse/IGNITE-20863?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kirill Tkalenko updated IGNITE-20863:
-------------------------------------
    Description: 
To implement IGNITE-20125, we need to correctly select the indexes into which 
we will insert data during RW transactions update operations for partitions.

What do we need for this:
# Catalog version of the transaction by beginTs of the txId.
# Catalog version of the update operation for the transaction.

An approximate index selection algorithm:
# Start with the catalog version at the beginning of the transaction.
# Selecting all indexes by catalog version for a specific table.
## If the index is not in the resulting selection, then simply add it.
## If the index is already present in the resulting selection, then we do 
nothing.
## If the index is present in the resulting selection but not in the catalog 
version, then depending on its status it will be:
### registered - the index will be removed from the resulting selection.
### available - will remain in the resulting selection.
# Increase the catalog version, if it is greater than the directory version for 
the update operation, then we will complete the index selection, else go to p. 
2.

  was:
To implement IGNITE-20125, we need to correctly select the indexes into which 
we will insert data during update operations for partitions.

What do we need for this:
# Catalog version of the transaction by beginTs of the txId.
# Catalog version of the update operation for the transaction.

An approximate index selection algorithm:
# Start with the catalog version at the beginning of the transaction.
# Selecting all indexes by catalog version for a specific table.
## If the index is not in the resulting selection, then simply add it.
## If the index is already present in the resulting selection, then we do 
nothing.
## If the index is present in the resulting selection but not in the catalog 
version, then depending on its status it will be:
### registered - the index will be removed from the resulting selection.
### available - will remain in the resulting selection.
# Increase the catalog version, if it is greater than the directory version for 
the update operation, then we will complete the index selection, else go to p. 
2.


> Selecting indexes when performing update operations for partition
> -----------------------------------------------------------------
>
>                 Key: IGNITE-20863
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20863
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Kirill Tkalenko
>            Assignee: Kirill Tkalenko
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0.0-beta2
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> To implement IGNITE-20125, we need to correctly select the indexes into which 
> we will insert data during RW transactions update operations for partitions.
> What do we need for this:
> # Catalog version of the transaction by beginTs of the txId.
> # Catalog version of the update operation for the transaction.
> An approximate index selection algorithm:
> # Start with the catalog version at the beginning of the transaction.
> # Selecting all indexes by catalog version for a specific table.
> ## If the index is not in the resulting selection, then simply add it.
> ## If the index is already present in the resulting selection, then we do 
> nothing.
> ## If the index is present in the resulting selection but not in the catalog 
> version, then depending on its status it will be:
> ### registered - the index will be removed from the resulting selection.
> ### available - will remain in the resulting selection.
> # Increase the catalog version, if it is greater than the directory version 
> for the update operation, then we will complete the index selection, else go 
> to p. 2.



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

Reply via email to