Hi, Joe:

> This "brokenness" is not clear to me.
https://github.com/apache/pulsar/pull/10478 This PIP solves some
problems of "brokenness",
>The sequence 3,4,5,6,7,8,9,10,11 12,13,14,15, 16 ,9,10,11,12,13,14,15,16,17, 
>18, 19, 20 ...does not break
> the ordering guarantees of Pulsar
If don't use transaction ack, this order is fine. but when we use
transaction ack, in this case, message 9 and message 10 will be
handled twice. Therefore, we need redeliver and receive to be
synchronized to ensure that messages received before redeliver will
not be repeated and ordered, and will not be repeatedly consumed after
redeliver. To achieve these goals, we need to redeliver to be a
synchronous method instead of async and need to retry automatically.

Reply via email to