You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by la...@apache.org on 2016/11/01 19:49:33 UTC
[09/50] [abbrv] hbase git commit: HBASE-16146 Remove thread local
usage in Counter
HBASE-16146 Remove thread local usage in Counter
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/4f29c230
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/4f29c230
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/4f29c230
Branch: refs/heads/branch-1
Commit: 4f29c230384b82b64ef4ad9ba61497747436799f
Parents: b47ded3
Author: Gary Helmling <ga...@apache.org>
Authored: Wed Sep 21 17:43:41 2016 -0700
Committer: Gary Helmling <ga...@apache.org>
Committed: Tue Oct 11 14:47:02 2016 -0700
----------------------------------------------------------------------
.../org/apache/hadoop/hbase/util/Counter.java | 21 +-------------------
.../org/apache/hadoop/hbase/ipc/RpcServer.java | 1 -
2 files changed, 1 insertion(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/4f29c230/hbase-common/src/main/java/org/apache/hadoop/hbase/util/Counter.java
----------------------------------------------------------------------
diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/util/Counter.java b/hbase-common/src/main/java/org/apache/hadoop/hbase/util/Counter.java
index 92c0a8f..ce0fddd 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/util/Counter.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/util/Counter.java
@@ -108,25 +108,12 @@ public class Counter {
return h;
}
- private static class IndexHolder {
- int index = hash();
- }
-
- private final ThreadLocal<IndexHolder> indexHolderThreadLocal =
- new ThreadLocal<IndexHolder>() {
- @Override
- protected IndexHolder initialValue() {
- return new IndexHolder();
- }
- };
-
public void add(long delta) {
Container container = containerRef.get();
Cell[] cells = container.cells;
int mask = cells.length - 1;
- IndexHolder indexHolder = indexHolderThreadLocal.get();
- int baseIndex = indexHolder.index;
+ int baseIndex = hash();
if(cells[baseIndex & mask].add(delta)) {
return;
}
@@ -139,8 +126,6 @@ public class Counter {
index++;
}
- indexHolder.index = index;
-
if(index - baseIndex >= cells.length &&
cells.length < MAX_CELLS_LENGTH &&
container.demoted.compareAndSet(false, true)) {
@@ -181,10 +166,6 @@ public class Counter {
return sum;
}
- public void destroy() {
- indexHolderThreadLocal.remove();
- }
-
@Override
public String toString() {
Cell[] cells = containerRef.get().cells;
http://git-wip-us.apache.org/repos/asf/hbase/blob/4f29c230/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcServer.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcServer.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcServer.java
index f7cc85f..564639f 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcServer.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RpcServer.java
@@ -2011,7 +2011,6 @@ public class RpcServer implements RpcServerInterface, ConfigurationObserver {
LOG.trace(ignored);
}
}
- rpcCount.destroy();
}
private UserGroupInformation createUser(ConnectionHeader head) {