asafm commented on issue #16680: URL: https://github.com/apache/pulsar/issues/16680#issuecomment-1201289792
I'm genuinely asking again, as I still don't understand. Say I send M1(`region=eu`) to the producer. It creates a batch and adds M1 to it. Now I send M2(`region=us`) to the producer. It checks current batch 1st record properties are different from M2 properties; thus, it goes left (No) on your diagram. This part I don't understand. I expected it at this stage to create a batch for `region=us` and add M2 to it. But I see written in your diagram that you "batched msgs in msgsContainer" (which container? for which properties? Which msgs are you referring to?) and you "and send them" (why? what is the trigger to send them? Size/time?) and then you clear and add M2 to the batch. I reasoned that you will a batch container per properties values set, so if I also send M3(`region=us`) and M4(`region=eu`), I will get: Batch 1 (`region=eu`): M1, M4 Batch 2 (`region=us`): M2, M3 When either batch reaches the trigger point (size/time), they will be sent, no? So once I understand the diagram, I might be able to figure out how it maintains order. In general, once understood, I believe that these question marks need to be explained in the PIP. -- 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]
