[
https://issues.apache.org/jira/browse/IGNITE-13086?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17161477#comment-17161477
]
Stanilovsky Evgeny commented on IGNITE-13086:
---------------------------------------------
[~alex_pl] hello ! I check your PR, and seems you don`t merge some
optimizations from mine [1] [2] [3]additionally you have redundant check here:
[4] [5], i prefer to create additional ticket for these additional fixes, what
do you think ?
[1] [https://github.com/apache/ignite/pull/7864/files]
[2]
[https://github.com/apache/ignite/pull/7864/files#diff-7e68f693bb69a011fbb9101bf8779015R174]
[3]
[https://github.com/apache/ignite/pull/7864/files#diff-0dcc5fcbfe072ce9ada28b6b36f11d0aR758]
[4]
[https://github.com/apache/ignite/blob/master/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/pagemem/PageMemoryImpl.java#L2326]
[5]
https://github.com/apache/ignite/blob/master/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/pagemem/PageMemoryImpl.java#L2140
> Improve current page replacement mechanism.
> -------------------------------------------
>
> Key: IGNITE-13086
> URL: https://issues.apache.org/jira/browse/IGNITE-13086
> Project: Ignite
> Issue Type: Improvement
> Components: persistence
> Affects Versions: 2.8.1
> Reporter: Stanilovsky Evgeny
> Assignee: Stanilovsky Evgeny
> Priority: Major
> Fix For: 2.9
>
> Attachments: 8.7-fix-replacement400_rand_512val_5touch_oldts.log,
> 8.7-replacement400_rand_512val_5touch_oldts.log,
> IgnitePdsPageReplacementTestToYard.java, replacement_64_new.jfr.zip,
> replacement_64_old.jfr.zip, screenshot-1.png, screenshot-2.png
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> Experimentally proven that current page replacement functionality has
> problems with replace candidate computation. Current implementation obtain 5
> random pages and make further decisions basing this pages last touch
> timestamp and some inner flags, however still possible cases when this pages
> set can be simply nullified due to inner logic. All improvements need to be
> proven, for example, by simple scenario:
> 1. put some data until event EVT_PAGE_REPLACEMENT_STARTED is triggered
> 2. put 2 times more data than been loaded in p1.
> 3. execute fullscan (through ScanQuery) for old\cold data processing
> emulation.
> 4. start processing only pages which can fit into current mem region.
> 5. measure "replacedPages" metric.
> (i attach code mention above)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)