From 33400cffa264ca05abf15139caadfaf8ef233040 Mon Sep 17 00:00:00 2001 From: Yunze Xu Date: Tue, 14 May 2024 16:52:08 +0800 Subject: [PATCH] [cleanup][broker] Remove warn logs when changing the state from Owned to Free (Extensible LB) --- .../channel/ServiceUnitStateChannelImpl.java | 36 +++++-------------- 1 file changed, 9 insertions(+), 27 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 bf6266482f8f0..9821ce56420ed 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 @@ -1284,34 +1284,16 @@ private void scheduleCleanup(String broker, long delayInSecs) { } - private ServiceUnitStateData getOverrideInactiveBrokerStateData(ServiceUnitStateData orphanData, - Optional selectedBroker, - String inactiveBroker) { - - - if (selectedBroker.isEmpty()) { - return new ServiceUnitStateData(Free, null, inactiveBroker, - true, getNextVersionId(orphanData)); - } - - if (orphanData.state() == Splitting) { - return new ServiceUnitStateData(Splitting, orphanData.dstBroker(), selectedBroker.get(), - Map.copyOf(orphanData.splitServiceUnitToDestBroker()), - true, getNextVersionId(orphanData)); - } else { - return new ServiceUnitStateData(Owned, selectedBroker.get(), inactiveBroker, - true, getNextVersionId(orphanData)); - } - } - private void overrideOwnership(String serviceUnit, ServiceUnitStateData orphanData, String inactiveBroker) { - Optional selectedBroker = selectBroker(serviceUnit, inactiveBroker); - if (selectedBroker.isEmpty()) { - log.warn("Empty selected broker for ownership serviceUnit:{} orphanData:{}." - + "totalCleanupErrorCnt:{}", - serviceUnit, orphanData, totalCleanupErrorCnt.incrementAndGet()); - } - var override = getOverrideInactiveBrokerStateData(orphanData, selectedBroker, inactiveBroker); + final var version = getNextVersionId(orphanData); + final var override = selectBroker(serviceUnit, inactiveBroker).map(selectedBroker -> { + if (orphanData.state() == Splitting) { + return new ServiceUnitStateData(Splitting, orphanData.dstBroker(), selectedBroker, + Map.copyOf(orphanData.splitServiceUnitToDestBroker()), true, version); + } else { + return new ServiceUnitStateData(Owned, selectedBroker, inactiveBroker, true, version); + } + }).orElseGet(() -> new ServiceUnitStateData(Free, null, inactiveBroker, true, version)); log.info("Overriding ownership serviceUnit:{} from orphanData:{} to overrideData:{}", serviceUnit, orphanData, override); publishOverrideEventAsync(serviceUnit, orphanData, override)