This is an automated email from the ASF dual-hosted git repository.
heesung pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/branch-3.0 by this push:
new 73f5f50b4e0 [fix][broker] Fixed ServiceUnitStateChannel monitor to
tombstone only inactive bundle states (#21721)
73f5f50b4e0 is described below
commit 73f5f50b4e000582e7c2500ab1f12e9533e02bd8
Author: Heesung Sohn <[email protected]>
AuthorDate: Thu Dec 14 11:54:03 2023 +0800
[fix][broker] Fixed ServiceUnitStateChannel monitor to tombstone only
inactive bundle states (#21721)
(cherry picked from commit 8d165803e948c770ff87d806fd54b94b7b6c8632)
---
.../loadbalance/extensions/channel/ServiceUnitStateChannelImpl.java | 2 +-
.../loadbalance/extensions/channel/ServiceUnitStateChannelTest.java | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelImpl.java
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelImpl.java
index 68501d201f0..76d1222a88a 100644
---
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelImpl.java
+++
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelImpl.java
@@ -1411,7 +1411,7 @@ public class ServiceUnitStateChannelImpl implements
ServiceUnitStateChannel {
continue;
}
- if (now - stateData.timestamp() >
semiTerminalStateWaitingTimeInMillis) {
+ if (!isActiveState(state) && now - stateData.timestamp() >
semiTerminalStateWaitingTimeInMillis) {
log.info("Found semi-terminal states to tombstone"
+ " serviceUnit:{}, stateData:{}", serviceUnit,
stateData);
tombstoneAsync(serviceUnit).whenComplete((__, e) -> {
diff --git
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelTest.java
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelTest.java
index e8ccd7b01ca..dc36a2b9237 100644
---
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelTest.java
+++
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/loadbalance/extensions/channel/ServiceUnitStateChannelTest.java
@@ -636,7 +636,7 @@ public class ServiceUnitStateChannelTest extends
MockedPulsarServiceBaseTest {
var leader = channel1.isChannelOwnerAsync().get() ? channel1 :
channel2;
validateMonitorCounters(leader,
0,
- 3,
+ 1,
0,
0,
0,
@@ -1406,7 +1406,7 @@ public class ServiceUnitStateChannelTest extends
MockedPulsarServiceBaseTest {
validateMonitorCounters(leader,
0,
- 3,
+ 1,
1,
0,
0,