mirror of https://github.com/apache/kafka.git
Two more edge cases I found producing extra TaskcorruptedException while playing around with the failing eos-beta upgrade test (sadly these are unrelated problems, as the test still fails with these fixes in place). * Need to write the checkpoint when recycling a standby: although we do preserve the changelog offsets when recycling a task, and should therefore write the offsets when the new task is itself closed, we do NOT write the checkpoint for uninitialized tasks. So if the new task is ultimately closed before it gets out of the CREATED state, the offsets will not be written and we can get a TaskCorruptedException * We do not write the checkpoint file if the current offset map is empty; however for eos the checkpoint file is not only used for restoration but also for clean shutdown. Although skipping a dummy checkpoint file does not actually violate any correctness since we are going to re-bootstrap from the log-start-offset anyways, it throws unnecessary TaskCorruptedException which has an overhead itself. Reviewers: John Roesler <vvcephei@apache.org>, Guozhang Wang <wangguoz@gmail.com> |
||
|---|---|---|
| .. | ||
| examples/src | ||
| quickstart | ||
| src | ||
| streams-scala | ||
| test-utils/src | ||
| upgrade-system-tests-10/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-11/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-20/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-21/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-22/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-23/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-24/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-25/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-0100/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-0101/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-0102/src/test/java/org/apache/kafka/streams/tests | ||
| upgrade-system-tests-0110/src/test/java/org/apache/kafka/streams/tests | ||
| .gitignore | ||