private final Logger log;
private final int totalChunks;
private final String leaderId;
private final Logger log;
private final int totalChunks;
private final String leaderId;
private int lastChunkIndex = LeaderInstallSnapshotState.FIRST_CHUNK_INDEX - 1;
private boolean sealed = false;
private int lastChunkHashCode = LeaderInstallSnapshotState.INITIAL_LAST_CHUNK_HASH_CODE;
private int lastChunkIndex = LeaderInstallSnapshotState.FIRST_CHUNK_INDEX - 1;
private boolean sealed = false;
private int lastChunkHashCode = LeaderInstallSnapshotState.INITIAL_LAST_CHUNK_HASH_CODE;
- SnapshotTracker(Logger log, int totalChunks, String leaderId) {
+ SnapshotTracker(Logger log, int totalChunks, String leaderId, RaftActorContext context) {
* @throws InvalidChunkException if the chunk index is invalid or out of order
*/
boolean addChunk(int chunkIndex, byte[] chunk, Optional<Integer> maybeLastChunkHashCode)
* @throws InvalidChunkException if the chunk index is invalid or out of order
*/
boolean addChunk(int chunkIndex, byte[] chunk, Optional<Integer> maybeLastChunkHashCode)
log.debug("addChunk: chunkIndex={}, lastChunkIndex={}, collectedChunks.size={}, lastChunkHashCode={}",
log.debug("addChunk: chunkIndex={}, lastChunkIndex={}, collectedChunks.size={}, lastChunkHashCode={}",
- chunkIndex, lastChunkIndex, collectedChunks.size(), this.lastChunkHashCode);
+ chunkIndex, lastChunkIndex, count, this.lastChunkHashCode);
- return collectedChunks.toByteArray();
- }
-
- ByteString getCollectedChunks() {
- return collectedChunks;
+ bufferedStream.close();
+ return fileBackedStream.asByteSource();