Hi all: As this github issue <https://github.com/apache/pulsar/issues/1088> brings up, for a partitioned topic, client has to send LookUp request for each partition which would result in quite a lot of topic lookup requests when a topic has many partitions. Here I'd like to propose to add a batch lookup api and make lookup easier for partitioned topic.
We could create a new BatchLookUp api, like getBrokers. It can take a list of topic as input, where each topicname has to be either a non-partitioned topic or a partition of a partitioned topic and it’ll return Map<TopicName, Pair<InetSocketAddress, InetSocketAddress>> where it’s a map of input topic to corresponding address. Here's a google doc contains more information and some proposed changes: https://docs.google.com/document/d/1yJ6GvtrdojY7EjQ4ZJK8dzX1M2i185Nf-dpwvsPWb1w/edit. Any ideas and suggestions are welcome. Thanks,