You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Bart Vercammen (JIRA)" <ji...@apache.org> on 2017/06/06 10:45:19 UTC

[jira] [Created] (KAFKA-5387) [Kafka Producer] - expose cluster metadata

Bart Vercammen created KAFKA-5387:
-------------------------------------

             Summary: [Kafka Producer] - expose cluster metadata
                 Key: KAFKA-5387
                 URL: https://issues.apache.org/jira/browse/KAFKA-5387
             Project: Kafka
          Issue Type: Improvement
    Affects Versions: 0.10.2.1
            Reporter: Bart Vercammen


Kafka producer has a method to expose the number of partitions for a specific topic.
{noformat}    public List<PartitionInfo> partitionsFor(String topic) {
        try {
            return waitOnMetadata(topic, null, maxBlockTimeMs).cluster.partitionsForTopic(topic);
        } catch (InterruptedException e) {
            throw new InterruptException(e);
        }
    }
{noformat}

Instead of only returning the number of available partitions for a topic, it would be nice that the entire cluster metadata is exposed to the caller.
This way we can make use of the partitioners in a more dynamic way.

Something like this maybe : 
{noformat}public Cluster clusterMetaData() {noformat}

Or, maybe even better, have the possibility to provide a partitioner when producing data on kafka, instead of only a specific partition number or a globally configured partitioner-class.
{noformat}
public Future<RecordMetadata> send(ProducerRecord<K, V> record, Partitioner partitioner, Callback callback)
{noformat}

Any suggestions or comments?




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)