You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2021/02/12 19:17:19 UTC

[GitHub] [pulsar-client-go] omnilight opened a new issue #466: receiverQueueSize in case of partitioned topics

omnilight opened a new issue #466:
URL: https://github.com/apache/pulsar-client-go/issues/466


   **Is your feature request related to a problem? Please describe.**
   Currently consumer option receiverQueueSize defines two things:
   1. the size of the permits we send to broker
   2. the size of the channel that receives messages inside consumer
   
   When we are using partitioned topics, we create separate instance of partitionConsumer for every partition.
   That leads to the situation when each partitioned consumer sends it's own flow command to the broker with the `receiverQueueSize` permits.
   
   As a result total number of permits for consumer is equal to `receiverQueueSize * numberOfTopicPartitions`.
   
   For the other side size of messages channel inside consumer would be just of `receiverQueueSize`.
   
   So broker would expect to send much more messages to the consumers than it could process.
   
   **Describe the solution you'd like**
   Probably we must set `partitionConsumerOpts.receiverQueueSize` to be equal to `receiverQueueSize / numberOfTopicPartitions` or make it able to configure it independently from receiverQueueSize.
   
   Special case when we have receiverQueueSize equal to 1. How could we handle this situation?
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org