Uploaded image for project: 'controller'
  1. controller
  2. CONTROLLER-2121

Split out RAFT entry metadata


    • Icon: Improvement Improvement
    • Resolution: Done
    • Icon: Medium Medium
    • 10.0.0
    • None
    • clustering

      We currently track RAFT entries in full, as ReplicatedLogEntry, without any differentiation of information level.

      There are four levels of information stored:

      • index/term, worth 16 bytes, critical to RAFT decisions
      • entry data, which dictates what operations areĀ  to be applied to the managed logical state
      • (estimated) entry size, which has a role during AppendEntries creation and log trimming operations
      • persistencePending flag, which is tracking local persistence progress

      This issue deals with separating the first item into a separate interface, so RAFT decisions can be clearly separated from other concerns.

      A RaftEntryMetadata exposes the RAFT journal index and RAFT term of a particular entry, without any other concerns.

      Use this interface instead of ReplicatedLogEntry to communicate information to code which does care about the other concerns.

            rovarga Robert Varga
            rovarga Robert Varga
            0 Vote for this issue
            1 Start watching this issue