heesung-sn commented on code in PR #20948:
URL: https://github.com/apache/pulsar/pull/20948#discussion_r1286134923
##########
pulsar-client/src/main/java/org/apache/pulsar/client/impl/ProducerImpl.java:
##########
@@ -553,9 +555,8 @@ public void sendAsync(Message<?> message, SendCallback
callback) {
synchronized (this) {
// Update the message metadata before computing the
payload chunk size
// to avoid a large message cannot be split into chunks.
- final long sequenceId =
updateMessageMetadataSequenceId(msgMetadata);
- String uuid = totalChunks > 1 ? String.format("%s-%d",
producerName, sequenceId) : null;
-
+ final long sequenceId =
updateMessageMetadataSequenceId(msgMetadata, chunkId > 0);
+ String uuid = totalChunks > 1 ? String.format("%s-%s",
producerName, chunkUUid) : null;
Review Comment:
- What's the purpose of this uuid? According to this PIP,
https://github.com/apache/pulsar/wiki/PIP-37:-Large-message-size-handling-in-Pulsar,
this uuid needs to be the same for all chunks for the same message. Doesn't
this violate the original logic?
```
optional string uuid; // Original message uuid that will be same for all the
chunks
optional int32 num_chunks_from_msg;
optional int32 total_chunk_msg_size;
optional int32 chunk_id;
```
- Do we need to worry about any uuid collision?
--
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]