RobertIndie commented on a change in pull request #12403:
URL: https://github.com/apache/pulsar/pull/12403#discussion_r746405400
##########
File path: pulsar-common/src/main/proto/PulsarApi.proto
##########
@@ -61,6 +61,9 @@ message MessageIdData {
optional int32 batch_index = 4 [default = -1];
repeated int64 ack_set = 5;
optional int32 batch_size = 6;
+
+ // For the chunk message id, we need to specify the first chunk message id.
+ optional MessageIdData first_chunk_message_id = 7;
Review comment:
When we send chunk messages, each chunk is sent in order, so I don't
think there is a case where the last chunk be acked before the first chunk.
In the original logic, we determine whether the whole message is sent
successfully by receiving the ack of the last chunk, and then return last chunk
message id to the user instead of returning message ids of all chunks to the
user.
When we receive the ack of the last chunk, it actually proves that the whole
message has been sent successfully and the message id of the first chunk will
not be null. In this PR, the first chunk message id and last chunk message id
will be packaged into ChunkMessageIdImpl and returned to the user only when the
ack of the last chunk is received.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]