You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by "tpiperatgod (via GitHub)" <gi...@apache.org> on 2023/02/13 10:39:36 UTC

[GitHub] [pulsar] tpiperatgod commented on pull request #18929: [improve][fn] Support processingGuarantees "EFFECTIVELY_ONCE" in python function

tpiperatgod commented on PR #18929:
URL: https://github.com/apache/pulsar/pull/18929#issuecomment-1427713593

   > @tpiperatgod Could you explain how these changes together ensure the `effectively_once` processing guarantee?
   
   Sorry for not finishing it before. It is currently available for review.
   
   this PR does the following
   1. maintain a `message id - producer obj` map during runtime
   2. when a message comes in, generate the `producer_name`, `producer_id` and the `sequence_id` based on the message information
   3. use `producer_id` to check if the corresponding producer obj exists: if it exists, set `self.producer` to that producer obj; otherwise, create a new producer obj using `producer_name`
   4. assign the `sequence_id` when sending the message
   
   


-- 
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: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org