nicktelford commented on code in PR #15264:
URL: https://github.com/apache/kafka/pull/15264#discussion_r1473141072


##########
streams/src/main/java/org/apache/kafka/streams/processor/internals/TaskExecutor.java:
##########
@@ -157,7 +158,8 @@ int commitTasksAndMaybeUpdateCommittableOffsets(final 
Collection<Task> tasksToCo
             if (task.commitNeeded()) {
                 task.clearTaskTimeout();
                 ++committed;
-                task.postCommit(false);
+                // under EOS, we need to enforce a checkpoint if our 
transaction buffers will exceeded their capacity

Review Comment:
   Actually, at this point we've only committed our Kafka transaction. The 
StateStore has not been committed/flushed, so our transaction buffers will 
still be full.
   
   `task.postCommit` is the process that "checkpoints" state stores. We need to 
enforce a checkpoint when the transaction buffer is full, because we only flush 
the StateStore when it is checkpointed. See `AbstractTask` line `99`.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to