The GitHub Actions job "Build and Run Tests by Bazel" on 
rocketmq.git/fix/transaction-check-prefer-original-producer has failed.
Run started by GitHub user wang-jiahua (triggered by wang-jiahua).

Head commit for run:
ccc962f7f80b668c837807da1d2604680f01a10f / wangjiahua.wjh 
<[email protected]>
[ISSUE #9791] Prefer original producer when checking transaction state

When multiple producers in the same group handle different topics,
the transaction check may be routed to an unrelated producer that
cannot determine the transaction state correctly.

Fix: Record the original producer's clientId in the half message
properties. During transaction check-back, prefer the channel
matching that clientId. Fall back to round-robin if the original
producer is offline.

Changes:
- MessageConst: add PROPERTY_TRANSACTION_PRODUCER_CLIENT_ID
- DefaultMQProducerImpl: write clientId into half message
- ProducerManager: add getAvailableChannel(groupId, preferredClientId)
- AbstractTransactionalMessageCheckListener: use new method
- TransactionalMessageRocksDBService: use new method
- ProducerManagerTest: 3 new test cases

Report URL: https://github.com/apache/rocketmq/actions/runs/28569136662

With regards,
GitHub Actions via GitBox

Reply via email to