hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yu Li (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-17676) Get class name once for all in AbstractFSWAL
Date Wed, 22 Feb 2017 05:35:44 GMT

     [ https://issues.apache.org/jira/browse/HBASE-17676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Yu Li updated HBASE-17676:
--------------------------
    Attachment: HBASE-17676.patch

A straight forward patch

> 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
>         Attachments: HBASE-17676.patch
>
>
> 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)

Mime
View raw message