jerrypeng edited a comment on issue #5969: Acked messages unexpectedly 
redelivered when others are negatively acked
URL: https://github.com/apache/pulsar/issues/5969#issuecomment-570084167
 
 
   @sijie @gmethvin we could track cursors at the batchLevel i.e. track cursors 
on the granularity of LedgerId:EntryId:BatchIndex, however there are 
performance implications if we would want to redeliver only messages that are 
NOT ACK ed or NACK ed.  To do so would require us to de-serialized BK entries 
on the broker side, filter the messages in the entry, re-serialize the message, 
send it to the client, and finally the client with have to deserialize.  To do 
this would entail more latency and 2X cpu effort for serialization and 
de-serialization. We have generally avoid entry inspection in the broker for 
such a reason.  
   
   The question I have is if a user really wants to get only the messages that 
are NOT ACK ed or NACK ed, can the user just turn off batching? Or if the user 
wants fewer duplicates from redelivered messages/batches, can the user just 
tune the batch size to be smaller?  Are these good enough workflows or knobs to 
turn for users to satisfy these use cases?
   
   @merlimat can you also chime in?

----------------------------------------------------------------
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:
[email protected]


With regards,
Apache Git Services

Reply via email to