You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by yo...@apache.org on 2023/08/29 08:37:51 UTC
[bookkeeper] branch master updated: Remove underreplicaiton callback (#4058)
This is an automated email from the ASF dual-hosted git repository.
yong pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
The following commit(s) were added to refs/heads/master by this push:
new 84a80f5998 Remove underreplicaiton callback (#4058)
84a80f5998 is described below
commit 84a80f5998363aff10b8f294c2b639aa80f334e2
Author: Yan Zhao <ho...@apache.org>
AuthorDate: Tue Aug 29 16:37:44 2023 +0800
Remove underreplicaiton callback (#4058)
### Motivation
Address https://lists.apache.org/thread/1xl3hr2cpyd5xh9kozbx5xlfsjsg3f4h
Deprecate underreplicaiton callback to relieve zookeeper pressure.
---
.../meta/LedgerUnderreplicationManager.java | 5 +++--
.../org/apache/bookkeeper/replication/Auditor.java | 17 ---------------
.../bookkeeper/replication/AuditorStats.java | 25 ----------------------
.../bookkeeper/replication/ReplicationStats.java | 2 --
4 files changed, 3 insertions(+), 46 deletions(-)
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/LedgerUnderreplicationManager.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/LedgerUnderreplicationManager.java
index 3cd1ceb4b1..256f7814d7 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/LedgerUnderreplicationManager.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/LedgerUnderreplicationManager.java
@@ -240,8 +240,9 @@ public interface LedgerUnderreplicationManager extends AutoCloseable {
* @param cb
* @throws ReplicationException.UnavailableException
*/
- void notifyUnderReplicationLedgerChanged(GenericCallback<Void> cb)
- throws ReplicationException.UnavailableException;
+ @Deprecated
+ default void notifyUnderReplicationLedgerChanged(GenericCallback<Void> cb)
+ throws ReplicationException.UnavailableException {}
/**
* Receive notification asynchronously when the lostBookieRecoveryDelay value is Changed.
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/Auditor.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/Auditor.java
index 220d52d8e5..9381028018 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/Auditor.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/Auditor.java
@@ -21,14 +21,12 @@
package org.apache.bookkeeper.replication;
import com.google.common.annotations.VisibleForTesting;
-import com.google.common.collect.Iterators;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import com.google.common.util.concurrent.SettableFuture;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.concurrent.Executors;
@@ -46,7 +44,6 @@ import org.apache.bookkeeper.conf.ServerConfiguration;
import org.apache.bookkeeper.meta.LedgerManager;
import org.apache.bookkeeper.meta.LedgerManagerFactory;
import org.apache.bookkeeper.meta.LedgerUnderreplicationManager;
-import org.apache.bookkeeper.meta.UnderreplicatedLedger;
import org.apache.bookkeeper.net.BookieId;
import org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.GenericCallback;
import org.apache.bookkeeper.replication.ReplicationException.BKAuditException;
@@ -183,7 +180,6 @@ public class Auditor implements AutoCloseable {
conf, auditorStats, admin, ledgerManager,
ledgerUnderreplicationManager, shutdownTaskHandler, hasAuditCheckTask);
allAuditorTasks.add(auditorReplicasCheckTask);
-
executor = Executors.newSingleThreadScheduledExecutor(new ThreadFactory() {
@Override
public Thread newThread(Runnable r) {
@@ -393,8 +389,6 @@ public class Auditor implements AutoCloseable {
knownBookies = getAvailableBookies();
this.ledgerUnderreplicationManager
.notifyLostBookieRecoveryDelayChanged(new LostBookieRecoveryDelayChangedCb());
- this.ledgerUnderreplicationManager.notifyUnderReplicationLedgerChanged(
- new UnderReplicatedLedgersChangedCb());
} catch (BKException bke) {
LOG.error("Couldn't get bookie list, so exiting", bke);
submitShutdownTask();
@@ -404,7 +398,6 @@ public class Auditor implements AutoCloseable {
submitShutdownTask();
return;
}
-
scheduleBookieCheckTask();
scheduleCheckAllLedgersTask();
schedulePlacementPolicyCheckTask();
@@ -558,16 +551,6 @@ public class Auditor implements AutoCloseable {
executor.scheduleAtFixedRate(auditorReplicasCheckTask, initialDelay, interval, TimeUnit.SECONDS);
}
- private class UnderReplicatedLedgersChangedCb implements GenericCallback<Void> {
- @Override
- public void operationComplete(int rc, Void result) {
- Iterator<UnderreplicatedLedger> underreplicatedLedgersInfo = ledgerUnderreplicationManager
- .listLedgersToRereplicate(null);
- auditorStats.getUnderReplicatedLedgersGuageValue().set(Iterators.size(underreplicatedLedgersInfo));
- auditorStats.getNumReplicatedLedgers().inc();
- }
- }
-
private class LostBookieRecoveryDelayChangedCb implements GenericCallback<Void> {
@Override
public void operationComplete(int rc, Void result) {
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/AuditorStats.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/AuditorStats.java
index 286ec388b3..bdb8c755e2 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/AuditorStats.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/AuditorStats.java
@@ -31,11 +31,9 @@ import static org.apache.bookkeeper.replication.ReplicationStats.NUM_LEDGERS_HAV
import static org.apache.bookkeeper.replication.ReplicationStats.NUM_LEDGERS_HAVING_NO_REPLICA_OF_AN_ENTRY;
import static org.apache.bookkeeper.replication.ReplicationStats.NUM_LEDGERS_NOT_ADHERING_TO_PLACEMENT_POLICY;
import static org.apache.bookkeeper.replication.ReplicationStats.NUM_LEDGERS_SOFTLY_ADHERING_TO_PLACEMENT_POLICY;
-import static org.apache.bookkeeper.replication.ReplicationStats.NUM_REPLICATED_LEDGERS;
import static org.apache.bookkeeper.replication.ReplicationStats.NUM_SKIPPING_CHECK_TASK_TIMES;
import static org.apache.bookkeeper.replication.ReplicationStats.NUM_UNDERREPLICATED_LEDGERS_ELAPSED_RECOVERY_GRACE_PERIOD;
import static org.apache.bookkeeper.replication.ReplicationStats.NUM_UNDER_REPLICATED_LEDGERS;
-import static org.apache.bookkeeper.replication.ReplicationStats.NUM_UNDER_REPLICATED_LEDGERS_GUAGE;
import static org.apache.bookkeeper.replication.ReplicationStats.PLACEMENT_POLICY_CHECK_TIME;
import static org.apache.bookkeeper.replication.ReplicationStats.REPLICAS_CHECK_TIME;
import static org.apache.bookkeeper.replication.ReplicationStats.UNDER_REPLICATED_LEDGERS_TOTAL_SIZE;
@@ -130,11 +128,6 @@ public class AuditorStats {
help = "the number of delayed-bookie-audits cancelled"
)
private final Counter numDelayedBookieAuditsCancelled;
- @StatsDoc(
- name = NUM_REPLICATED_LEDGERS,
- help = "the number of replicated ledgers"
- )
- private final Counter numReplicatedLedgers;
@StatsDoc(
name = NUM_LEDGERS_NOT_ADHERING_TO_PLACEMENT_POLICY,
help = "Gauge for number of ledgers not adhering to placement policy found in placement policy check"
@@ -167,11 +160,6 @@ public class AuditorStats {
+ ", this doesn't include ledgers counted towards numLedgersHavingLessThanAQReplicasOfAnEntry"
)
private final Gauge<Integer> numLedgersHavingLessThanWQReplicasOfAnEntry;
- @StatsDoc(
- name = NUM_UNDER_REPLICATED_LEDGERS_GUAGE,
- help = "Gauge for num of underreplicated ledgers"
- )
- private final Gauge<Integer> numUnderReplicatedLedgers;
@StatsDoc(
name = NUM_SKIPPING_CHECK_TASK_TIMES,
help = "the times of auditor check task skipped"
@@ -203,7 +191,6 @@ public class AuditorStats {
numBookieAuditsDelayed = this.statsLogger.getCounter(ReplicationStats.NUM_BOOKIE_AUDITS_DELAYED);
numDelayedBookieAuditsCancelled = this.statsLogger
.getCounter(ReplicationStats.NUM_DELAYED_BOOKIE_AUDITS_DELAYES_CANCELLED);
- numReplicatedLedgers = this.statsLogger.getCounter(NUM_REPLICATED_LEDGERS);
numSkippingCheckTaskTimes = this.statsLogger.getCounter(NUM_SKIPPING_CHECK_TASK_TIMES);
numLedgersNotAdheringToPlacementPolicy = new Gauge<Integer>() {
@Override
@@ -285,17 +272,5 @@ public class AuditorStats {
};
this.statsLogger.registerGauge(ReplicationStats.NUM_LEDGERS_HAVING_LESS_THAN_WQ_REPLICAS_OF_AN_ENTRY,
numLedgersHavingLessThanWQReplicasOfAnEntry);
- numUnderReplicatedLedgers = new Gauge<Integer>() {
- @Override
- public Integer getDefaultValue() {
- return 0;
- }
-
- @Override
- public Integer getSample() {
- return underReplicatedLedgersGuageValue.get();
- }
- };
- this.statsLogger.registerGauge(NUM_UNDER_REPLICATED_LEDGERS_GUAGE, numUnderReplicatedLedgers);
}
}
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationStats.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationStats.java
index d6814edf09..7823124483 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationStats.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/replication/ReplicationStats.java
@@ -64,8 +64,6 @@ public interface ReplicationStats {
String REPLICATE_EXCEPTION = "exceptions";
String NUM_DEFER_LEDGER_LOCK_RELEASE_OF_FAILED_LEDGER = "NUM_DEFER_LEDGER_LOCK_RELEASE_OF_FAILED_LEDGER";
String NUM_ENTRIES_UNABLE_TO_READ_FOR_REPLICATION = "NUM_ENTRIES_UNABLE_TO_READ_FOR_REPLICATION";
- String NUM_UNDER_REPLICATED_LEDGERS_GUAGE = "NUM_UNDER_REPLICATED_LEDGERS_GUAGE";
- String NUM_REPLICATED_LEDGERS = "NUM_REPLICATED_LEDGERS";
String NUM_NOT_ADHERING_PLACEMENT_LEDGERS_REPLICATED = "NUM_NOT_ADHERING_PLACEMENT_LEDGERS_REPLICATED";
String NUM_SKIPPING_CHECK_TASK_TIMES = "NUM_SKIPPING_CHECK_TASK_TIMES";
}