leiless opened a new issue #10832: URL: https://github.com/apache/pulsar/issues/10832
## `send()` > `MessageId send(T message) throws PulsarClientException` > Sends a message. > This call will be blocking until is successfully **acknowledged** by the Pulsar broker. > ... > **Returns**: > the message id assigned to the published message > ... > https://pulsar.apache.org/api/client/org/apache/pulsar/client/api/Producer.html#send-T- ## `sendAsync()` > `CompletableFuture<MessageId> sendAsync(T message)` > Send a message asynchronously > When the producer queue is full, by default this method will complete the future with an exception `PulsarClientException.ProducerQueueIsFullError` > ... > **Returns**: > a future that can be used to track when the message will have been safely persisted > https://pulsar.apache.org/api/client/org/apache/pulsar/client/api/Producer.html#sendAsync-T- Hi, Pulsar developers, my doubt is, if I have `N` messages to be sent by the producer. For the first `[0, N-1]` messages, I use `sendAsync()` and ignore the future result(`CompletableFuture<MessageId>`). And for the last message, i.e., the `N`-th message, I use `send()` to ensure `N`-th message is successfully **acknowledged**(persisted in the disk) by the Pulsar broker. My question is, does the `N`-th message ACKed from the broker imply that its proceedings(i.e. `[0, N-1]` messages) also ACKed(persisted in the disk) by the broker? since the message queue order has to be remaining FIFO. My config: * One producer * One subscription in exclusive mode * One consumer -- 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: us...@infra.apache.org