CLFutureX opened a new issue, #9347:
URL: https://github.com/apache/rocketmq/issues/9347

   ### Before Creating the Enhancement Request
   
   - [x] I have confirmed that this should be classified as an enhancement 
rather than a bug/feature.
   
   
   ### Summary
   
   In the current transactional message mechanism, after the sender proactively 
checks the transaction status once and receives an "unknown" result, subsequent 
status checks are initiated by the broker. The broker selects an available 
connection from the same producer group to perform the check, using a 
round-robin strategy that prioritizes active and available connections.
   
   ### Motivation
   
   When selecting a connection, priority should be given to the original 
sender’s connection. This approach offers the following advantages:
   
   Local State Validation: The transaction status can be directly determined 
from the sender’s local cache during the check, avoiding the need to query 
distributed caches or databases.
   Example: The localTrans collection in 
org.apache.rocketmq.example.transaction.TransactionListenerImpl demonstrates 
this optimization.
   Reduced Overhead: Minimizes network and I/O costs associated with 
distributed state queries.
   
   
   ### Describe the Solution You'd Like
   
   1
   
   ### Describe Alternatives You've Considered
   
   1
   
   ### Additional Context
   
   1


-- 
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-unsubscr...@rocketmq.apache.org.apache.org

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

Reply via email to