mattisonchao opened a new pull request, #17237:
URL: https://github.com/apache/pulsar/pull/17237

   ### Motivation
   
   When invoking `readMoreEntries` we have to check if the `havePendingRead` 
state is `true` to avoid reading the same position many times in the race 
condition. 
   
   You can add `invocationCount` on the `Test` annotation to call the new test 
multiple times to understand the problem.
   
   The relative logs:
   
   ```
   2022-08-23T19:10:01,016 - INFO  - 
[pulsar-web-191-16:Slf4jRequestLogWriter@62] - 127.0.0.1 - - 
[23/Aug/2022:19:10:01 +0800] "GET 
/admin/v2/namespaces/my-property/throttling_ns/subscriptionDispatchRate 
HTTP/1.1" 200 124 "-" "Pulsar-Java-v2.11.0-SNAPSHOT" 2
   2022-08-23T19:10:01,019 - INFO  - 
[pulsar-web-191-14:Slf4jRequestLogWriter@62] - 127.0.0.1 - - 
[23/Aug/2022:19:10:01 +0800] "GET 
/admin/v2/namespaces/my-property/throttling_ns/dispatchRate HTTP/1.1" 200 123 
"-" "Pulsar-Java-v2.11.0-SNAPSHOT" 2
   2022-08-23T19:10:01,021 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:01,021 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:0
   2022-08-23T19:10:01,021 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:01,023 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [0] in the listener
   2022-08-23T19:10:01,036 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:01,036 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:1
   2022-08-23T19:10:01,036 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:2
   2022-08-23T19:10:01,036 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:3
   2022-08-23T19:10:01,036 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:4
   2022-08-23T19:10:01,036 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:5
   2022-08-23T19:10:01,036 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:01,037 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [1] in the listener
   2022-08-23T19:10:01,037 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [2] in the listener
   2022-08-23T19:10:01,037 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [3] in the listener
   2022-08-23T19:10:01,037 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [4] in the listener
   2022-08-23T19:10:01,037 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [5] in the listener
   2022-08-23T19:10:01,037 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:01,037 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:6
   2022-08-23T19:10:01,037 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:01,038 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:01,038 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:7
   2022-08-23T19:10:01,038 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:01,038 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [6] in the listener
   2022-08-23T19:10:01,038 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [7] in the listener
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:8
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:9
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:10
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:11
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:12
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:13
   2022-08-23T19:10:02,039 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:14
   2022-08-23T19:10:02,040 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:15
   2022-08-23T19:10:02,040 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:16
   2022-08-23T19:10:02,040 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:17
   2022-08-23T19:10:02,040 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [8] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [9] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [10] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [11] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [12] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [13] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [14] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [15] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [16] in the listener
   2022-08-23T19:10:02,041 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [17] in the listener
   2022-08-23T19:10:03,042 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:03,042 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:18
   2022-08-23T19:10:03,042 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:03,043 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:03,043 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:18
   2022-08-23T19:10:03,043 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:03,043 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:03,043 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:19
   2022-08-23T19:10:03,043 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [18] in the listener
   2022-08-23T19:10:03,044 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:03,044 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [18] in the listener
   2022-08-23T19:10:03,044 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [19] in the listener
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:20
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:21
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:22
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:23
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:20
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:21
   2022-08-23T19:10:04,045 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:22
   2022-08-23T19:10:04,046 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:23
   2022-08-23T19:10:04,046 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:04,046 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [20] in the listener
   2022-08-23T19:10:04,047 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [21] in the listener
   2022-08-23T19:10:04,047 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [22] in the listener
   2022-08-23T19:10:04,047 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [23] in the listener
   2022-08-23T19:10:04,047 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [20] in the listener
   2022-08-23T19:10:04,047 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [21] in the listener
   2022-08-23T19:10:04,047 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [22] in the listener
   2022-08-23T19:10:04,047 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [23] in the listener
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:24
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:25
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:26
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:24
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:25
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:26
   2022-08-23T19:10:05,048 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:05,049 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [24] in the listener
   2022-08-23T19:10:05,049 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [25] in the listener
   2022-08-23T19:10:05,049 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [26] in the listener
   2022-08-23T19:10:05,049 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [24] in the listener
   2022-08-23T19:10:05,049 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [25] in the listener
   2022-08-23T19:10:05,050 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [26] in the listener
   2022-08-23T19:10:05,659 - INFO  - 
[pulsar-load-manager-163-1:ModularLoadManagerImpl@466] - Writing local data to 
metadata store because maximum change 55.46875% exceeded threshold 10%; time 
since last report written is 5.02 seconds. ResourceUsage:[cpu: 11.06%, memory: 
55.47%, directMemory: 9.38%, bandwidthIn: 0.00%, bandwidthOut: 0.00%]
   2022-08-23T19:10:05,661 - INFO  - 
[metadata-store-171-1:ResourceLockImpl@165] - Acquired resource lock on 
/loadbalance/brokers/localhost:52221
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:27
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:28
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:29
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@162]
 - ============ before dispatch
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:27
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:28
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@164]
 - dispatch message to consumer ledger:3, entry:29
   2022-08-23T19:10:06,053 - INFO  - 
[broker-topic-workers-OrderedExecutor-7-0:PersistentDispatcherSingleActiveConsumer@166]
 - ============ after dispatch
   2022-08-23T19:10:06,056 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [27] in the listener
   2022-08-23T19:10:06,056 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [28] in the listener
   2022-08-23T19:10:06,056 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [29] in the listener
   2022-08-23T19:10:06,056 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [27] in the listener
   2022-08-23T19:10:06,056 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [28] in the listener
   2022-08-23T19:10:06,056 - INFO  - 
[pulsar-external-listener-197-1:SubscriptionMessageDispatchThrottlingTest@346] 
- Received message [29] in the listener
   
   java.lang.AssertionError: 
   Expected :30.0
   Actual   :41.0
   <Click to see difference>
   
   
        at org.testng.Assert.fail(Assert.java:99)
        at org.testng.Assert.failNotEquals(Assert.java:1037)
        at org.testng.Assert.assertEquals(Assert.java:744)
        at org.testng.Assert.assertEquals(Assert.java:757)
        at 
org.apache.pulsar.client.api.SubscriptionMessageDispatchThrottlingTest.testDispatchRate(SubscriptionMessageDispatchThrottlingTest.java:390)
        at 
org.apache.pulsar.client.api.SubscriptionMessageDispatchThrottlingTest.testMultiLevelDispatch(SubscriptionMessageDispatchThrottlingTest.java:420)
        at 
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
        at java.base/java.lang.reflect.Method.invoke(Method.java:577)
        at 
org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
        at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:599)
        at 
org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:174)
        at org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
        at 
org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:822)
        at 
org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:147)
        at 
org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
        at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
        at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
        at org.testng.TestRunner.privateRun(TestRunner.java:764)
        at org.testng.TestRunner.run(TestRunner.java:585)
        at org.testng.SuiteRunner.runTest(SuiteRunner.java:384)
        at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:378)
        at org.testng.SuiteRunner.privateRun(SuiteRunner.java:337)
        at org.testng.SuiteRunner.run(SuiteRunner.java:286)
        at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:53)
        at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:96)
        at org.testng.TestNG.runSuitesSequentially(TestNG.java:1218)
        at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
        at org.testng.TestNG.runSuites(TestNG.java:1069)
        at org.testng.TestNG.run(TestNG.java:1037)
        at com.intellij.rt.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:66)
        at 
com.intellij.rt.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:109)
   ```
   
   ### Modifications
   
   - Add `synchronized` keyword and `havePendingRead` state to avoid read same 
position many times.
   
   ### Verifying this change
   
   - [x] Make sure that the change passes the CI checks.
   
   ### Documentation
   
   Check the box below or label this PR directly.
   
   Need to update docs? 
   
   - [ ] `doc-required` 
   (Your PR needs to update docs and you will update later)
     
   - [x] `doc-not-needed` 
   (Please explain why)
     
   - [ ] `doc` 
   (Your PR contains doc changes)
   
   - [ ] `doc-complete`
   (Docs have been already added)


-- 
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