You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Roman Puchkovskiy (Jira)" <ji...@apache.org> on 2022/11/11 11:43:00 UTC

[jira] [Comment Edited] (IGNITE-18122) Track last applied term and group config in storages

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

Roman Puchkovskiy edited comment on IGNITE-18122 at 11/11/22 11:42 AM:
-----------------------------------------------------------------------

[~apolovtcev]  could you please take a look at the attached PR?


was (Author: rpuch):
@Aleksandr Polovtcev could you please take a look at the attached PR?

> Track last applied term and group config in storages
> ----------------------------------------------------
>
>                 Key: IGNITE-18122
>                 URL: https://issues.apache.org/jira/browse/IGNITE-18122
>             Project: Ignite
>          Issue Type: Improvement
>          Components: persistence
>            Reporter: Roman Puchkovskiy
>            Assignee: Roman Puchkovskiy
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0.0-beta2
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> We need last applied index, term and group config to build a snapshot meta. In the current implementation, only the index is stored our storages (MV and TX), but term and config are taken from JRaft's {{{}LogManager{}}}. This is unreliable as the log might be truncated.
> We must store term and config in our storages as well (term in both of them as it is kinda required attribute of a RAFT index, and group only in MV storage).
> Also, we must make sure that on ANY command processed by {{PartitionListener}} (and on configuration committed event, too), we update lastAppliedIndex+term in one of the storages, Otherwise, a resulting gap might hinder {{AppendEntries}} calls to followers requiring to install a snapshot in an infinite loop.



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