You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Anton Vinogradov (Jira)" <ji...@apache.org> on 2021/08/17 15:12:00 UTC
[jira] [Updated] (IGNITE-15329) Atomics should be repairable by
Read Repair
[ https://issues.apache.org/jira/browse/IGNITE-15329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anton Vinogradov updated IGNITE-15329:
--------------------------------------
Parent: IGNITE-15167
Issue Type: Sub-task (was: Improvement)
> Atomics should be repairable by Read Repair
> -------------------------------------------
>
> Key: IGNITE-15329
> URL: https://issues.apache.org/jira/browse/IGNITE-15329
> Project: Ignite
> Issue Type: Sub-task
> Reporter: Anton Vinogradov
> Assignee: Anton Vinogradov
> Priority: Major
>
> It's pretty clear that it's impossible to fix atomics with "Read Repair" atomically since it's impossible to lock entries during the repair process.
> Even get from backups has no guarantee to return consistent values under load.
> But to fix we must also perform an additional step - cache put.
> So, value can be changed between gets, can be changed after gets but before put, but it still seems to be possible to automize the fix.
> Idea is to decide what entry won on the last check attempt and put this value using the entry processor.
> During the entry processor execution, we should check the current node's value, and if the value is not expected for this node, we should perform put, but record a concurrent modification event.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)