Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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 stateUnder Discussion

...

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

/* add reset-all-external-topics option */

Code Block
languagejava
titleadd reset-all-external-topics option
private static OptionSpecBuilder resetAllExternalTopicsOption;

private int maybeResetInputAndSeekToEndIntermediateTopicOffsets(final Map consumerConfig,
																final boolean dryRun,
                                                                final boolean resetAllExternalTopics)


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.