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 08:12:01 UTC

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

Roman Puchkovskiy created IGNITE-18122:
------------------------------------------

             Summary: 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
             Fix For: 3.0.0-beta2


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)