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

Konstantin Orlov updated IGNITE-28453:
--------------------------------------
    Ignite Flags:   (was: Docs Required,Release Notes Required)

> Avoid index key materialization during index row verification
> -------------------------------------------------------------
>
>                 Key: IGNITE-28453
>                 URL: https://issues.apache.org/jira/browse/IGNITE-28453
>             Project: Ignite
>          Issue Type: Improvement
>          Components: secondary indexes ai3
>            Reporter: Konstantin Orlov
>            Assignee: Konstantin Orlov
>            Priority: Major
>              Labels: ignite-3
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> At the moment, in order to make sure {{IndexRow}} we've just retrieved from 
> storage is not leftover from transaction rollback, we extract index key once 
> again. The problem is that we materialize BinaryTuple just to do byte 
> comparison, and then throw it away:
> {code}
>     private static boolean indexRowMatches(IndexRow indexRow, BinaryRow 
> binaryRow, TableSchemaAwareIndexStorage schemaAwareIndexStorage) {
>         BinaryTuple actualIndexRow = 
> schemaAwareIndexStorage.indexRowResolver().extractColumns(binaryRow);
>         return 
> indexRow.indexColumns().byteBuffer().equals(actualIndexRow.byteBuffer());
>     }
> {code}
> It would be better to implement byte comparison avoiding tuple 
> materialization.



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

Reply via email to