tongsucn opened a new issue #6000: Sending Individual ACK for multiple messages in one command. URL: https://github.com/apache/pulsar/issues/6000 Shared subscription can only employ Individual ACK, which may limit the throughput. However, from [`PulsarApi.proto`](https://github.com/apache/pulsar/blob/5504dc6e280237ab1abc70fc2889be6149ae518a/pulsar-common/src/main/proto/PulsarApi.proto#L461) we find that Pulsar supports acknowledging multiple messages in one command even in Individual mode. Java client supports this feature by adding `acknowledgeGroupTime` setting in [`ConsumerBuilder`](http://pulsar.apache.org/api/client/org/apache/pulsar/client/api/ConsumerBuilder.html#acknowledgmentGroupTime-long-java.util.concurrent.TimeUnit-), but C++ client does not. So the questions are: 1. In Individual ACK mode, does *sending multiple message IDs in one `CommandAck`* really help achieving higher throughput? 2. If we implement this feature in C++ client (and later contribute back to community), shall it be implemented as an ACK interface, or as a setting like in Java. (Seems the previous one is easier.) 3. If it's implemented as an ACK interface, what should it be called? `acknowledgeGroup` or `groupAcknowledge`? We prefer the term `group`, because the C++ client has a data structure called `BatchAcknowledgeTracker`, which may confuse the code reader when we have two similar names for different purpose. ### BTW **Does `acknowledge` interface in C++ client really sending ACK synchronously?** It actually calls the [`acknowledgeAsync`](https://github.com/apache/pulsar/blob/5504dc6e280237ab1abc70fc2889be6149ae518a/pulsar-client-cpp/lib/Consumer.cc#L87) and waits for triggering of the callback. But the [`doAcknowledge`](https://github.com/apache/pulsar/blob/5504dc6e280237ab1abc70fc2889be6149ae518a/pulsar-client-cpp/lib/ConsumerImpl.cc#L790) it calls returns immediately anyway with `ResultOk`, because sending command is actually an asynchronous operation? Is this a known feature/issue? Or I just misunderstand the implementation? Is there any opened issues related to this?
---------------------------------------------------------------- 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: [email protected] With regards, Apache Git Services
