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

   ### Before Creating the Bug Report
   
   - [X] I found a bug, not just asking a question, which should be created in 
[GitHub Discussions](https://github.com/apache/rocketmq/discussions).
   
   - [X] I have searched the [GitHub 
Issues](https://github.com/apache/rocketmq/issues) and [GitHub 
Discussions](https://github.com/apache/rocketmq/discussions)  of this 
repository and believe that this is not a duplicate.
   
   - [X] I have confirmed that this bug belongs to the current repository, not 
other repositories of RocketMQ.
   
   
   ### Runtime platform environment
   
   OS: macOS-11.2.3
   
   ### RocketMQ version
   
   rocketmq-all-5.1.3-bin-release
   
   ### JDK Version
   
   java version "1.8.0_181"
   Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
   Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
   
   ### Describe the Bug
   
   transactionTimeout/transactionCheckMax/transactionCheckInterval work 
incorrectly!
   
   ### Steps to Reproduce
   
   1. add the 3 properties in broker.conf
   ```
   # NOTE 
以下3个(transactionTimeout/transactionCheckMax/transactionCheckInterval)回查相关的设置似乎并不生效!!!!!!
   # 指定TM(producer)在指定秒内应将最终确认状态发送给TC(rocket-mq-broker),否则引发消息回查。默认为60秒。单位为毫秒.
   transactionTimeout=20000
   # 指定最多回查次数,超过后将丢弃消息并记录错误日志。默认15次。15次后还没成功就回滚.
   transactionCheckMax=5
   # 消息回查的时间间隔, 默认为60秒. 单位为毫秒.
   transactionCheckInterval=20000
   ```
   2. start mqnamesrv, mqbroker and mqproxy one by one
   3. send transaction-message but sleep 60-minutes in LocalTransaction to make 
the callback-function(TransactionChecker.check) be fired.
   4. just return TransactionResolution.UNKNOWN in 
callback-function(TransactionChecker.check)
   5. 
   
   ### What Did You Expect to See?
   
   1. the transactionTimeout  is 20s
   2. the callback-function(TransactionChecker.check) be fired 5 times. just as 
i set in the broker.conf
   3. the transactionCheckInterval is 20s
   
   ### What Did You See Instead?
   
   Actually, i repeat my test-case 5 times with new 5 new topics,  but got 5 
different results.
   
   1. the transactionTimeout  in 25s~35s
   2. sometimes the callback-function(TransactionChecker.check) be fired 17 
times
        sometimes the callback-function(TransactionChecker.check) be fired 14 
times
        sometimes the callback-function(TransactionChecker.check) be fired 15 
times
        sometimes the callback-function(TransactionChecker.check) be fired 
twice in the same time, but the total times is 15.
   3. the transactionCheckInterval is 30s, not 20s nor 60s.
   
   ### Additional Context
   
   In Chinese:
   5次同样的测试, 得到5种不同结果。


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

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to