hbase git commit: HBASE-21025 Add cache for TableStateManager

2018-08-10 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-2.0 7ee4aa459 -> a1b690198


HBASE-21025 Add cache for TableStateManager


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/a1b69019
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/a1b69019
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/a1b69019

Branch: refs/heads/branch-2.0
Commit: a1b6901985e58f7cd1169e6cd9c6ce249d88cd90
Parents: 7ee4aa4
Author: zhangduo 
Authored: Fri Aug 10 14:03:28 2018 +0800
Committer: zhangduo 
Committed: Fri Aug 10 21:11:57 2018 +0800

--
 .../hbase/io/hfile/bucket/BucketCache.java  |   2 +-
 .../master/MirroringTableStateManager.java  |  39 ++-
 .../hadoop/hbase/master/TableStateManager.java  | 241 +++
 .../hadoop/hbase/util/IdReadWriteLock.java  |  40 +--
 .../hadoop/hbase/util/TestIdReadWriteLock.java  |   6 +-
 5 files changed, 183 insertions(+), 145 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/a1b69019/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
index 40c0a00..333b7ef 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
@@ -203,7 +203,7 @@ public class BucketCache implements BlockCache, HeapSize {
* Key set of offsets in BucketCache is limited so soft reference is the 
best choice here.
*/
   @VisibleForTesting
-  final IdReadWriteLock offsetLock = new IdReadWriteLock(ReferenceType.SOFT);
+  final IdReadWriteLock offsetLock = new 
IdReadWriteLock<>(ReferenceType.SOFT);
 
   private final NavigableSet blocksByHFile =
   new ConcurrentSkipListSet<>(new Comparator() {

http://git-wip-us.apache.org/repos/asf/hbase/blob/a1b69019/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
index 417e11d..e486496 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
@@ -20,6 +20,7 @@ package org.apache.hadoop.hbase.master;
 import java.io.IOException;
 
 import org.apache.hadoop.hbase.client.TableState;
+import org.apache.hadoop.hbase.client.TableState.State;
 import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
 import org.apache.hadoop.hbase.protobuf.generated.ZooKeeperProtos;
 import org.apache.hadoop.hbase.zookeeper.ZKUtil;
@@ -45,8 +46,8 @@ public class MirroringTableStateManager extends 
TableStateManager {
   private static final Logger LOG = 
LoggerFactory.getLogger(MirroringTableStateManager.class);
 
   /**
-   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper
-   * so hbase-1.x clients can pick-up table state.
+   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper so
+   * hbase-1.x clients can pick-up table state.
*/
   static final String MIRROR_TABLE_STATE_TO_ZK_KEY = 
"hbase.mirror.table.state.to.zookeeper";
 
@@ -54,26 +55,14 @@ public class MirroringTableStateManager extends 
TableStateManager {
 super(master);
   }
 
-  protected void updateMetaState(TableName tableName, TableState.State 
newState)
-  throws IOException {
-// Take the lock. Its reentrant. Calls to super will take same lock.
-lock.writeLock().lock();
-try {
-  super.updateMetaState(tableName, newState);
-  updateZooKeeper(new TableState(tableName, newState));
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateUpdated(TableName tableName, State newState) throws 
IOException {
+updateZooKeeper(new TableState(tableName, newState));
   }
 
-  public void setDeletedTable(TableName tableName) throws IOException {
-lock.writeLock().lock();
-try {
-  super.setDeletedTable(tableName);
-  deleteZooKeeper(tableName);
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateDeleted(TableName tableName) throws IOException {
+deleteZooKeeper(tableName);
   }
 
   private void updateZooKeeper(TableState tableState) throws IOException {
@@ -81,7 +70,7 @@ public class MirroringTableStateManager

hbase git commit: HBASE-21025 Add cache for TableStateManager

2018-08-10 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-2 fb9aa8a95 -> 2311fa86d


HBASE-21025 Add cache for TableStateManager


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/2311fa86
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/2311fa86
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/2311fa86

Branch: refs/heads/branch-2
Commit: 2311fa86d41033af8fa9d3683b5de2feb18c87a7
Parents: fb9aa8a
Author: zhangduo 
Authored: Fri Aug 10 14:03:28 2018 +0800
Committer: zhangduo 
Committed: Fri Aug 10 21:11:45 2018 +0800

--
 .../hbase/io/hfile/bucket/BucketCache.java  |   2 +-
 .../master/MirroringTableStateManager.java  |  39 ++-
 .../hadoop/hbase/master/TableStateManager.java  | 241 +++
 .../hadoop/hbase/util/IdReadWriteLock.java  |  40 +--
 .../hadoop/hbase/util/TestIdReadWriteLock.java  |   6 +-
 5 files changed, 183 insertions(+), 145 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/2311fa86/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
index 40c0a00..333b7ef 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
@@ -203,7 +203,7 @@ public class BucketCache implements BlockCache, HeapSize {
* Key set of offsets in BucketCache is limited so soft reference is the 
best choice here.
*/
   @VisibleForTesting
-  final IdReadWriteLock offsetLock = new IdReadWriteLock(ReferenceType.SOFT);
+  final IdReadWriteLock offsetLock = new 
IdReadWriteLock<>(ReferenceType.SOFT);
 
   private final NavigableSet blocksByHFile =
   new ConcurrentSkipListSet<>(new Comparator() {

http://git-wip-us.apache.org/repos/asf/hbase/blob/2311fa86/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
index 417e11d..e486496 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
@@ -20,6 +20,7 @@ package org.apache.hadoop.hbase.master;
 import java.io.IOException;
 
 import org.apache.hadoop.hbase.client.TableState;
+import org.apache.hadoop.hbase.client.TableState.State;
 import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
 import org.apache.hadoop.hbase.protobuf.generated.ZooKeeperProtos;
 import org.apache.hadoop.hbase.zookeeper.ZKUtil;
@@ -45,8 +46,8 @@ public class MirroringTableStateManager extends 
TableStateManager {
   private static final Logger LOG = 
LoggerFactory.getLogger(MirroringTableStateManager.class);
 
   /**
-   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper
-   * so hbase-1.x clients can pick-up table state.
+   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper so
+   * hbase-1.x clients can pick-up table state.
*/
   static final String MIRROR_TABLE_STATE_TO_ZK_KEY = 
"hbase.mirror.table.state.to.zookeeper";
 
@@ -54,26 +55,14 @@ public class MirroringTableStateManager extends 
TableStateManager {
 super(master);
   }
 
-  protected void updateMetaState(TableName tableName, TableState.State 
newState)
-  throws IOException {
-// Take the lock. Its reentrant. Calls to super will take same lock.
-lock.writeLock().lock();
-try {
-  super.updateMetaState(tableName, newState);
-  updateZooKeeper(new TableState(tableName, newState));
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateUpdated(TableName tableName, State newState) throws 
IOException {
+updateZooKeeper(new TableState(tableName, newState));
   }
 
-  public void setDeletedTable(TableName tableName) throws IOException {
-lock.writeLock().lock();
-try {
-  super.setDeletedTable(tableName);
-  deleteZooKeeper(tableName);
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateDeleted(TableName tableName) throws IOException {
+deleteZooKeeper(tableName);
   }
 
   private void updateZooKeeper(TableState tableState) throws IOException {
@@ -81,7 +70,7 @@ public class MirroringTableStateManager ext

hbase git commit: HBASE-21025 Add cache for TableStateManager

2018-08-10 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-2.1 8a9ba0c65 -> ee164fcbc


HBASE-21025 Add cache for TableStateManager


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/ee164fcb
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/ee164fcb
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/ee164fcb

Branch: refs/heads/branch-2.1
Commit: ee164fcbc53191c70e942f87e1b7e1852ce9b5cb
Parents: 8a9ba0c
Author: zhangduo 
Authored: Fri Aug 10 14:03:28 2018 +0800
Committer: zhangduo 
Committed: Fri Aug 10 21:11:53 2018 +0800

--
 .../hbase/io/hfile/bucket/BucketCache.java  |   2 +-
 .../master/MirroringTableStateManager.java  |  39 ++-
 .../hadoop/hbase/master/TableStateManager.java  | 241 +++
 .../hadoop/hbase/util/IdReadWriteLock.java  |  40 +--
 .../hadoop/hbase/util/TestIdReadWriteLock.java  |   6 +-
 5 files changed, 183 insertions(+), 145 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/ee164fcb/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
index 40c0a00..333b7ef 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
@@ -203,7 +203,7 @@ public class BucketCache implements BlockCache, HeapSize {
* Key set of offsets in BucketCache is limited so soft reference is the 
best choice here.
*/
   @VisibleForTesting
-  final IdReadWriteLock offsetLock = new IdReadWriteLock(ReferenceType.SOFT);
+  final IdReadWriteLock offsetLock = new 
IdReadWriteLock<>(ReferenceType.SOFT);
 
   private final NavigableSet blocksByHFile =
   new ConcurrentSkipListSet<>(new Comparator() {

http://git-wip-us.apache.org/repos/asf/hbase/blob/ee164fcb/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
index 417e11d..e486496 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
@@ -20,6 +20,7 @@ package org.apache.hadoop.hbase.master;
 import java.io.IOException;
 
 import org.apache.hadoop.hbase.client.TableState;
+import org.apache.hadoop.hbase.client.TableState.State;
 import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
 import org.apache.hadoop.hbase.protobuf.generated.ZooKeeperProtos;
 import org.apache.hadoop.hbase.zookeeper.ZKUtil;
@@ -45,8 +46,8 @@ public class MirroringTableStateManager extends 
TableStateManager {
   private static final Logger LOG = 
LoggerFactory.getLogger(MirroringTableStateManager.class);
 
   /**
-   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper
-   * so hbase-1.x clients can pick-up table state.
+   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper so
+   * hbase-1.x clients can pick-up table state.
*/
   static final String MIRROR_TABLE_STATE_TO_ZK_KEY = 
"hbase.mirror.table.state.to.zookeeper";
 
@@ -54,26 +55,14 @@ public class MirroringTableStateManager extends 
TableStateManager {
 super(master);
   }
 
-  protected void updateMetaState(TableName tableName, TableState.State 
newState)
-  throws IOException {
-// Take the lock. Its reentrant. Calls to super will take same lock.
-lock.writeLock().lock();
-try {
-  super.updateMetaState(tableName, newState);
-  updateZooKeeper(new TableState(tableName, newState));
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateUpdated(TableName tableName, State newState) throws 
IOException {
+updateZooKeeper(new TableState(tableName, newState));
   }
 
-  public void setDeletedTable(TableName tableName) throws IOException {
-lock.writeLock().lock();
-try {
-  super.setDeletedTable(tableName);
-  deleteZooKeeper(tableName);
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateDeleted(TableName tableName) throws IOException {
+deleteZooKeeper(tableName);
   }
 
   private void updateZooKeeper(TableState tableState) throws IOException {
@@ -81,7 +70,7 @@ public class MirroringTableStateManager

hbase git commit: HBASE-21025 Add cache for TableStateManager

2018-08-10 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/master 28635d610 -> 397388316


HBASE-21025 Add cache for TableStateManager


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/39738831
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/39738831
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/39738831

Branch: refs/heads/master
Commit: 397388316ead020d005a33e233364d166d4add00
Parents: 28635d6
Author: zhangduo 
Authored: Fri Aug 10 14:03:28 2018 +0800
Committer: zhangduo 
Committed: Fri Aug 10 21:11:40 2018 +0800

--
 .../hbase/io/hfile/bucket/BucketCache.java  |   2 +-
 .../master/MirroringTableStateManager.java  |  39 ++-
 .../hadoop/hbase/master/TableStateManager.java  | 241 +++
 .../hadoop/hbase/util/IdReadWriteLock.java  |  40 +--
 .../hadoop/hbase/util/TestIdReadWriteLock.java  |   6 +-
 5 files changed, 183 insertions(+), 145 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/39738831/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
index fcebd02..a862912 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/bucket/BucketCache.java
@@ -201,7 +201,7 @@ public class BucketCache implements BlockCache, HeapSize {
* Key set of offsets in BucketCache is limited so soft reference is the 
best choice here.
*/
   @VisibleForTesting
-  final IdReadWriteLock offsetLock = new IdReadWriteLock(ReferenceType.SOFT);
+  final IdReadWriteLock offsetLock = new 
IdReadWriteLock<>(ReferenceType.SOFT);
 
   private final NavigableSet blocksByHFile =
   new ConcurrentSkipListSet<>(new Comparator() {

http://git-wip-us.apache.org/repos/asf/hbase/blob/39738831/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
index 417e11d..e486496 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MirroringTableStateManager.java
@@ -20,6 +20,7 @@ package org.apache.hadoop.hbase.master;
 import java.io.IOException;
 
 import org.apache.hadoop.hbase.client.TableState;
+import org.apache.hadoop.hbase.client.TableState.State;
 import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
 import org.apache.hadoop.hbase.protobuf.generated.ZooKeeperProtos;
 import org.apache.hadoop.hbase.zookeeper.ZKUtil;
@@ -45,8 +46,8 @@ public class MirroringTableStateManager extends 
TableStateManager {
   private static final Logger LOG = 
LoggerFactory.getLogger(MirroringTableStateManager.class);
 
   /**
-   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper
-   * so hbase-1.x clients can pick-up table state.
+   * Set this key to true in Configuration to enable mirroring of table state 
out to zookeeper so
+   * hbase-1.x clients can pick-up table state.
*/
   static final String MIRROR_TABLE_STATE_TO_ZK_KEY = 
"hbase.mirror.table.state.to.zookeeper";
 
@@ -54,26 +55,14 @@ public class MirroringTableStateManager extends 
TableStateManager {
 super(master);
   }
 
-  protected void updateMetaState(TableName tableName, TableState.State 
newState)
-  throws IOException {
-// Take the lock. Its reentrant. Calls to super will take same lock.
-lock.writeLock().lock();
-try {
-  super.updateMetaState(tableName, newState);
-  updateZooKeeper(new TableState(tableName, newState));
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateUpdated(TableName tableName, State newState) throws 
IOException {
+updateZooKeeper(new TableState(tableName, newState));
   }
 
-  public void setDeletedTable(TableName tableName) throws IOException {
-lock.writeLock().lock();
-try {
-  super.setDeletedTable(tableName);
-  deleteZooKeeper(tableName);
-} finally {
-  lock.writeLock().unlock();
-}
+  @Override
+  protected void metaStateDeleted(TableName tableName) throws IOException {
+deleteZooKeeper(tableName);
   }
 
   private void updateZooKeeper(TableState tableState) throws IOException {
@@ -81,7 +70,7 @@ public class MirroringTableStateManager extends