[
https://issues.apache.org/jira/browse/IGNITE-21125?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Nikita Amelchev updated IGNITE-21125:
-------------------------------------
Ignite Flags: Release Notes Required (was: Docs Required,Release Notes
Required)
Release Note: Fixed duplicated keys written to dump
> Prevent duplicate keys in dump
> ------------------------------
>
> Key: IGNITE-21125
> URL: https://issues.apache.org/jira/browse/IGNITE-21125
> Project: Ignite
> Issue Type: Task
> Reporter: Nikolay Izhikov
> Assignee: Nikolay Izhikov
> Priority: Major
> Labels: IEP-109, ise, pull-request-available
> Fix For: 2.17
>
> Time Spent: 1.5h
> Remaining Estimate: 0h
>
> Currently, cache dump can contain the same key several times.
> In the read time we must maintain Set of read keys to filter out duplicates.
> So dump read leads to high GC pressure.
> We can overcome this issue and filter out duplicates in the write time:
> * Iterator don't write keys that was written by {{beforeChange}} listener,
> already.
> * Partition Iterator returns key in ascending order. Order set by
> {{CacheDataTree#compare}} method.
> * {{beforeChange}} listener must not write keys that was already written by
> the iterator.
> Cheap algorithm is the following:
> * Store last key written by iterator.
> * If changed key (in {{beforeChange}}) less then last key written by iterator
> then it must be skiped. Because, it already saved by the iterator.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)