diff --git a/server/src/main/java/io/atomix/copycat/server/state/AbstractAppender.java b/server/src/main/java/io/atomix/copycat/server/state/AbstractAppender.java
index <HASH>..<HASH> 100644
--- a/server/src/main/java/io/atomix/copycat/server/state/AbstractAppender.java
+++ b/server/src/main/java/io/atomix/copycat/server/state/AbstractAppender.java
@@ -231,7 +231,7 @@ abstract class AbstractAppender implements AutoCloseable {
           .withIndex(member.getSnapshotIndex())
           .withOffset(member.getSnapshotOffset())
           .withData(buffer.flip())
-          .withComplete(reader.hasRemaining())
+          .withComplete(!reader.hasRemaining())
           .build();
       }
     }
Use SnapshotReader.hasRemaining() to determine whether bytes remain in the snapshot during replication.