You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Anna Povzner (JIRA)" <ji...@apache.org> on 2019/06/04 20:04:00 UTC
[jira] [Created] (KAFKA-8481) Clients may fetch incomplete set of
topic partitions just after topic is created
Anna Povzner created KAFKA-8481:
-----------------------------------
Summary: Clients may fetch incomplete set of topic partitions just after topic is created
Key: KAFKA-8481
URL: https://issues.apache.org/jira/browse/KAFKA-8481
Project: Kafka
Issue Type: Bug
Affects Versions: 2.2.1
Reporter: Anna Povzner
KafkaConsumer#partitionsFor() or AdminClient#describeTopics() may return incomplete set of partitions for the given topic if the topic just got created.
Cause: When topic gets created, in most cases, controller sends partitions of this topics via several UpdateMetadataRequests (vs. one UpdateMetadataRequest with all partitions). First UpdateMetadataRequest contains partitions for which this broker hosts replicas, and then one or more UpdateMetadataRequest for the remaining partitions. This means that if a broker gets topic metadata requests between first and last UpdateMetadataRequest, the response will contain only subset of topic partitions.
Proposed fix: In KafkaController#processTopicChange(), before calling OnNewPartitionCreation(), send UpdateRequestMetadata with partitions of new topics (addedPartitionReplicaAssignment) to all live brokers.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)