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

Anton Vinogradov updated IGNITE-15329:
--------------------------------------
    Labels: iep-31  (was: )

> 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
>              Labels: iep-31
>
> 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.20.1#820001)

Reply via email to