You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Yu Li (JIRA)" <ji...@apache.org> on 2017/02/22 05:33:44 UTC
[jira] [Created] (HBASE-17676) Get class name once for all in
AbstractFSWAL
Yu Li created HBASE-17676:
-----------------------------
Summary: Get class name once for all in AbstractFSWAL
Key: HBASE-17676
URL: https://issues.apache.org/jira/browse/HBASE-17676
Project: HBase
Issue Type: Bug
Components: Performance
Reporter: Yu Li
Assignee: Yu Li
While verifying HBASE-17471 with high write workload, observed several handler thread at getting class name in jstack, as shown below:
{noformat}
"B.defaultRpcServer.handler=60,queue=3,port=16020" daemon prio=10 tid=0x00007f0673835800 nid=0x4dec runnable [0x00007f06721b5000]
java.lang.Thread.State: RUNNABLE
at java.lang.Class.getEnclosingMethod0(Native Method)
at java.lang.Class.getEnclosingMethodInfo(Class.java:964)
at java.lang.Class.getEnclosingClass(Class.java:1137)
at java.lang.Class.getSimpleBinaryName(Class.java:1282)
at java.lang.Class.getSimpleName(Class.java:1174)
at org.apache.hadoop.hbase.regionserver.wal.FSHLog.stampSequenceIdAndPublishToRingBuffer(FSHLog.java:1251)
at org.apache.hadoop.hbase.regionserver.wal.FSHLog.append(FSHLog.java:1238)
at org.apache.hadoop.hbase.regionserver.HRegion.doMiniBatchMutation(HRegion.java:3173)
at org.apache.hadoop.hbase.regionserver.HRegion.batchMutate(HRegion.java:2874)
at org.apache.hadoop.hbase.regionserver.HRegion.batchMutate(HRegion.java:2814)
at org.apache.hadoop.hbase.regionserver.RSRpcServices.doBatchOp(RSRpcServices.java:823)
at org.apache.hadoop.hbase.regionserver.RSRpcServices.doNonAtomicRegionMutation(RSRpcServices.java:785)
at org.apache.hadoop.hbase.regionserver.RSRpcServices.multi(RSRpcServices.java:2259)
at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:32213)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:848)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:102)
at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:133)
at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:108)
at java.lang.Thread.run(Thread.java:756)
{noformat}
We could get the class name in constructor and use it for all places needed.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)