[ 
https://issues.apache.org/jira/browse/IGNITE-22914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17887991#comment-17887991
 ] 

Roman Puchkovskiy commented on IGNITE-22914:
--------------------------------------------

Thanks!

> Store a checksum with each Metastorage revision
> -----------------------------------------------
>
>                 Key: IGNITE-22914
>                 URL: https://issues.apache.org/jira/browse/IGNITE-22914
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Roman Puchkovskiy
>            Assignee: Roman Puchkovskiy
>            Priority: Major
>              Labels: iep-128, ignite-3
>          Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> Currently, for each Metastorage revision, we store the revision number and 
> its timestamp. We should add the third element a checksum.
> Having the checksums will allow us to make sure that Metastorage does not 
> diverge. This will be implemented in IGNITE-22916 where we'll make a 
> checksum-based validation of Metastorage of a node that reenters Metastorage 
> (that is, the node did not participate in Metastorage repair and gets 
> migrated to the repaired part of the cluster).
> The checksum is to be calculated from the Metastorage command generating the 
> revision (it is enough to include in the checksum the changes the command 
> applies to the Metastorage AND the result it returns to the caller), and it 
> should also contain the previous checksum, so the checksums will form a 
> chain. First revision would use a zero checksum as the 'previous revision 
> checksum'.
> When Metastorage is compacted up to revision N, checksums up to revision N 
> are to be removed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to