You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2018/05/29 19:22:51 UTC
[14/14] hbase git commit: HBASE-20597 Serialize access to a shared
reference to ZooKeeperWatcher in HBaseReplicationEndpoint
HBASE-20597 Serialize access to a shared reference to ZooKeeperWatcher in HBaseReplicationEndpoint
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/e43b2648
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/e43b2648
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/e43b2648
Branch: refs/heads/branch-2.0
Commit: e43b26484c16da8c72aef63ce1de8df6c16fa1cb
Parents: e534956
Author: Andrew Purtell <ap...@apache.org>
Authored: Fri May 25 10:25:29 2018 -0700
Committer: Andrew Purtell <ap...@apache.org>
Committed: Tue May 29 11:29:17 2018 -0700
----------------------------------------------------------------------
.../hbase/replication/HBaseReplicationEndpoint.java | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/e43b2648/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/HBaseReplicationEndpoint.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/HBaseReplicationEndpoint.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/HBaseReplicationEndpoint.java
index bd5c529..9cb3312 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/HBaseReplicationEndpoint.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/HBaseReplicationEndpoint.java
@@ -43,19 +43,17 @@ import org.slf4j.LoggerFactory;
* target cluster is an HBase cluster.
*/
@InterfaceAudience.Private
-@edu.umd.cs.findbugs.annotations.SuppressWarnings(value="MT_CORRECTNESS",
- justification="Thinks zkw needs to be synchronized access but should be fine as is.")
public abstract class HBaseReplicationEndpoint extends BaseReplicationEndpoint
implements Abortable {
private static final Logger LOG = LoggerFactory.getLogger(HBaseReplicationEndpoint.class);
- private ZKWatcher zkw = null; // FindBugs: MT_CORRECTNESS
+ private ZKWatcher zkw = null;
private List<ServerName> regionServers = new ArrayList<>(0);
private long lastRegionServerUpdate;
- protected void disconnect() {
+ protected synchronized void disconnect() {
if (zkw != null) {
zkw.close();
}
@@ -123,7 +121,7 @@ public abstract class HBaseReplicationEndpoint extends BaseReplicationEndpoint
* Get the ZK connection to this peer
* @return zk connection
*/
- protected ZKWatcher getZkw() {
+ protected synchronized ZKWatcher getZkw() {
return zkw;
}
@@ -131,7 +129,7 @@ public abstract class HBaseReplicationEndpoint extends BaseReplicationEndpoint
* Closes the current ZKW (if not null) and creates a new one
* @throws IOException If anything goes wrong connecting
*/
- void reloadZkWatcher() throws IOException {
+ synchronized void reloadZkWatcher() throws IOException {
if (zkw != null) zkw.close();
zkw = new ZKWatcher(ctx.getConfiguration(),
"connection to cluster: " + ctx.getPeerId(), this);