This page is meant as a template for writing a KIP. To create a KIP choose Tools->Copy on this page and modify with your content and replace the heading with the next KIP number and a description of your issue. Replace anything in italics with your own description.
Status
Current state: Under Discussion
Discussion thread: here
JIRA:
Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).
Motivation
As of today, user has to specify `--input-topic` in the stream reset to be able to reset offset to a specific position. For a stream job with multiple external topics that needs to be purged, users usually don't want to name all the topics in order to reset the offsets. It's really painful to look through the entire topology to make sure we purge all the committed offsets.
Public Interfaces
StreamsResetter.class
private static OptionSpecBuilder resetAllExternalTopicsOption; private int maybeResetInputAndSeekToEndIntermediateTopicOffsets(final Map consumerConfig, final boolean dryRun, final boolean resetAllExternalTopics, final List<MemberDescription> members)
Proposed Changes
We could add a config `--reset-all-external-topics` to the reset tool such that when enabled, we could delete offsets for all involved topics. The topic metadata could be acquired by issuing a `DescribeGroup` request from admin client, which is stored in the member subscription information.
Compatibility, Deprecation, and Migration Plan
Because it is an option addition Compatibility, Deprecation, and Migration Plan are not a problem
Rejected Alternatives
Not applicable.