Browse Source
When tasks are found corrupted, Kafka Streams tries to commit the non-corrupted tasks before closing and reviving the corrupted active tasks. Besides active running tasks, Kafka Streams tries to commit restoring active tasks and standby tasks. However, restoring active tasks do not need to be committed since they do not have offsets to commit and the current code does not write a checkpoint. Furthermore, trying to commit restoring active tasks with the state updater enabled results in the following error: java.lang.UnsupportedOperationException: This task is read-only at org.apache.kafka.streams.processor.internals.ReadOnlyTask.commitNeeded(ReadOnlyTask.java:209) ... since commitNeeded() is not a read-only method for active tasks. In future, we can consider writing a checkpoint for active restoring tasks in this situation. Additionally, we should fix commitNeeded() in active tasks to be read-only. Reviewers: Matthias J. Sax <matthias@confluent.io>, Lucas Brutschy <lbrutschy@confluent.io>pull/12095/merge
Bruno Cadonna
1 year ago
committed by
GitHub
4 changed files with 57 additions and 5 deletions
Loading…
Reference in new issue