Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: fix minor bug: a section was "Heading 3"

...

Topics Marked For Deletion

...

Currently KafkaAdminClient.describeTopics() and KafkaAdminClient.listTopics() uses the Metadata protocol to acquire topic information. The returned response however won't contain the topics that are under deletion but couldn't complete yet (for instance because of some replicas offline), therefore it is not possible to implement the current command's "marked for deletion" feature. To get around this there were several alternatives that can be seen below but during the discussion we decided to keep this work in KIP-142. The idea in this KIP was that we could introduce some changes in the Metadata protocol, such as:

  • Cache topics that are under deletion but some of their replicas are offline.
  • Create a new error, called TOPIC__DELETION_IN_PROGRESS
  • Bump the Metadata request version. The format of the protocol won't change, only the fact that there is a new Error type that we're introducing, but that requires bumping the protocol as old clients won't be able to handle it and most probably end up in an UNKNOWN_SERVER_ERROR.
  • Smarten up the KafkaApis.handleTopicMetadataRequest to also return the list of topics under deletion with the above error

...