Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Follower sends a fetch request
  2. Leader replies with a snapshot epoch and end offset.
  3. Follower pauses fetch requests
  4. Follower fetches a snapshot chunks from the leader into a temporary snapshot file (EndOffset-Epoch.checkpoint.part)
  5. Validate fetch snapshot
    1. All snapshot chunks are fetched
    2. Verify the CRC of the records in the snapshot
    3. Atomically move the temporary snapshot file (EndOffset-Epoch.checkpoint.part) to the permanent location (EndOffset-Epoch.checkpoint)
  6. Follower resumes fetch requests by
    1. Setting the LogStartOffset to the snapshot's end offset.
    2. Setting the LEO or FetchOffset in the fetch request to the snapshot's end offset.
    3. Setting the LastFetchedEpoch in the fetch request to the snapshot's epoch.

...