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/12/20 11:33:00 UTC

[jira] [Created] (IGNITE-18432) SafeTimeCandidateManager#commitIndex() fails assertion if indices have different terms

Roman Puchkovskiy created IGNITE-18432:
------------------------------------------

             Summary: SafeTimeCandidateManager#commitIndex() fails assertion if indices have different terms
                 Key: IGNITE-18432
                 URL: https://issues.apache.org/jira/browse/IGNITE-18432
             Project: Ignite
          Issue Type: Bug
            Reporter: Roman Puchkovskiy
             Fix For: 3.0.0-beta2


{{SafeTimeCandidateManager#commitIndex()}} accepts a range of indices and a term corresponding to the last of these indices. It then tries to look up the corresponding timestamps by (index, term) pair.

It might happen that it gets an inteval of indices where some of them have one term, others have another term. Example:
 # A command with index 29 and term 1 is applied
 # Leader is changed and new configuration 'entry' is applied with index 30 and term 2
 # {{commitIndex()}} is called for this batch with lastIndex=28, index=30 and term 2, so it tries to look up an index (29,1) and fails to do so, failing the assertion



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