You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Maxim Muzafarov (Jira)" <ji...@apache.org> on 2019/10/03 09:59:01 UTC

[jira] [Updated] (IGNITE-9689) MVCC: Optimize filter usage in MvccUpdateDataRow.

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

Maxim Muzafarov updated IGNITE-9689:
------------------------------------
    Fix Version/s:     (was: 2.8)
                   2.9

> MVCC: Optimize filter usage in MvccUpdateDataRow.
> -------------------------------------------------
>
>                 Key: IGNITE-9689
>                 URL: https://issues.apache.org/jira/browse/IGNITE-9689
>             Project: Ignite
>          Issue Type: Task
>          Components: cache, mvcc
>            Reporter: Andrey Mashenkov
>            Priority: Major
>              Labels: mvcc_performance
>             Fix For: 2.9
>
>
> PutIfAbsent and all Replace operation uses filter for previous values checks.
> When filter has provided then we have to retrieve full row (instead of header) just to apply the filter.
> However, in most of cases filter doesn't need a value itself, but just a fact if previous value exists.
> There is unused class org.apache.ignite.internal.processors.cache.CacheOperationFilter enum that can be used for optimization. We can just compare filter type and visitor resultType to make a decision in CacheDataStore.mvccUpdate\mvccRemove methods.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)