You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by eo...@apache.org on 2020/06/08 12:18:41 UTC
[bookkeeper] branch branch-4.9 updated: [BUG] Fix avoid invoke init
drivers repeatedly
This is an automated email from the ASF dual-hosted git repository.
eolivelli pushed a commit to branch branch-4.9
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
The following commit(s) were added to refs/heads/branch-4.9 by this push:
new 768f6c8 [BUG] Fix avoid invoke init drivers repeatedly
768f6c8 is described below
commit 768f6c881debbe19ba604b42caefe1566fdbdc65
Author: lamber-ken <la...@apache.org>
AuthorDate: Mon Jun 8 20:18:01 2020 +0800
[BUG] Fix avoid invoke init drivers repeatedly
### Motivation
static code blocks are always invoked when the class is initialized, when client connect to bookkeeper server, output repeat init log
```
2020-06-04 10:10:24,751 INFO org.apache.bookkeeper.meta.MetadataDrivers - BookKeeper metadata driver manager initialized
2020-06-04 10:10:24,753 INFO org.apache.bookkeeper.meta.MetadataDrivers - BookKeeper metadata driver manager initialized
2020-06-04 10:10:24,753 INFO org.apache.bookkeeper.meta.MetadataDrivers - BookKeeper metadata driver manager initialized
```
### Changes
Remove redundant initialization code.
Reviewers: Jia Zhai <zh...@apache.org>, Matteo Minardi <mi...@hotmail.it>, Enrico Olivelli <eo...@gmail.com>
This closes #2356 from lamber-ken/bk-init-repeat
(cherry picked from commit 2a24be666a861b1f6eece25a9cde42459b5b32a2)
Signed-off-by: Enrico Olivelli <eo...@apache.org>
---
.../apache/bookkeeper/meta/MetadataDrivers.java | 25 +---------------------
1 file changed, 1 insertion(+), 24 deletions(-)
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java
index 44c25df..83edebe 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/MetadataDrivers.java
@@ -90,27 +90,18 @@ public final class MetadataDrivers {
private static final ConcurrentMap<String, MetadataClientDriverInfo> clientDrivers;
@Getter(AccessLevel.PACKAGE)
private static final ConcurrentMap<String, MetadataBookieDriverInfo> bookieDrivers;
- private static boolean initialized = false;
static {
clientDrivers = new ConcurrentHashMap<>();
bookieDrivers = new ConcurrentHashMap<>();
- initialize();
- }
-
- static void initialize() {
- if (initialized) {
- return;
- }
loadInitialDrivers();
- initialized = true;
- log.info("BookKeeper metadata driver manager initialized");
}
@VisibleForTesting
static void loadInitialDrivers() {
loadInitialClientDrivers();
loadInitialBookieDrivers();
+ log.info("BookKeeper metadata driver manager initialized");
}
private static void loadInitialClientDrivers() {
@@ -186,10 +177,6 @@ public final class MetadataDrivers {
public static void registerClientDriver(String metadataBackendScheme,
Class<? extends MetadataClientDriver> driver,
boolean allowOverride) {
- if (!initialized) {
- initialize();
- }
-
String scheme = metadataBackendScheme.toLowerCase();
MetadataClientDriverInfo oldDriverInfo = clientDrivers.get(scheme);
if (null != oldDriverInfo && !allowOverride) {
@@ -221,10 +208,6 @@ public final class MetadataDrivers {
public static void registerBookieDriver(String metadataBackendScheme,
Class<? extends MetadataBookieDriver> driver,
boolean allowOverride) {
- if (!initialized) {
- initialize();
- }
-
String scheme = metadataBackendScheme.toLowerCase();
MetadataBookieDriverInfo oldDriverInfo = bookieDrivers.get(scheme);
if (null != oldDriverInfo && !allowOverride) {
@@ -250,9 +233,6 @@ public final class MetadataDrivers {
*/
public static MetadataClientDriver getClientDriver(String scheme) {
checkNotNull(scheme, "Client Driver Scheme is null");
- if (!initialized) {
- initialize();
- }
MetadataClientDriverInfo driverInfo = clientDrivers.get(scheme.toLowerCase());
if (null == driverInfo) {
throw new IllegalArgumentException("Unknown backend " + scheme);
@@ -290,9 +270,6 @@ public final class MetadataDrivers {
*/
public static MetadataBookieDriver getBookieDriver(String scheme) {
checkNotNull(scheme, "Bookie Driver Scheme is null");
- if (!initialized) {
- initialize();
- }
MetadataBookieDriverInfo driverInfo = bookieDrivers.get(scheme.toLowerCase());
if (null == driverInfo) {
throw new IllegalArgumentException("Unknown backend " + scheme);