[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-22 Thread Hudson (JIRA)

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

Hudson commented on HBASE-17676:


SUCCESS: Integrated in Jenkins build HBase-Trunk_matrix #2550 (See 
[https://builds.apache.org/job/HBase-Trunk_matrix/2550/])
HBASE-17676 Get class name once for all in AbstractFSWAL (liyu: rev 
93e60153b0cef83ff6dafc03d771c9d41a23dc3a)
* (edit) 
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/AbstractFSWAL.java


> Get class name once for all in AbstractFSWAL
> 
>
> Key: HBASE-17676
> URL: https://issues.apache.org/jira/browse/HBASE-17676
> Project: HBase
>  Issue Type: Improvement
>  Components: Performance
>Affects Versions: 2.0
>Reporter: Yu Li
>Assignee: Yu Li
> Fix For: 2.0
>
> Attachments: HBASE-17676.patch, HBASE-17676.v2.patch, 
> HBASE-17676.v3.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=0x7f0673835800 nid=0x4dec runnable [0x7f06721b5000]
>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)


[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-22 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-17676:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 16s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 
0s {color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s 
{color} | {color:red} The patch doesn't appear to include any new or modified 
tests. Please justify why no new tests are needed for this patch. Also please 
list what manual steps were performed to verify this patch. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 
56s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 43s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
50s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
17s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 
58s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 33s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
45s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 39s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 39s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
48s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
17s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
30m 4s {color} | {color:green} Patch does not cause any errors with Hadoop 
2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha2. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 6s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 32s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green} 116m 22s 
{color} | {color:green} hbase-server in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
29s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 160m 54s {color} 
| {color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.12.3 Server=1.12.3 Image:yetus/hbase:8d52d23 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12853905/HBASE-17676.v3.patch |
| JIRA Issue | HBASE-17676 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux ffe6b7678124 3.13.0-106-generic #153-Ubuntu SMP Tue Dec 6 
15:44:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build@2/component/dev-support/hbase-personality.sh
 |
| git revision | master / c579cf6 |
| Default Java | 1.8.0_121 |
| findbugs | v3.0.0 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/5795/testReport/ |
| modules | C: hbase-server U: hbase-server |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/5795/console |
| Powered by | Apache Yetus 0.3.0   http://yetus.apache.org |


This message was automatically generated.



> Get class name once for all in AbstractFSWAL
> 
>
> Key: HBASE-17676
> URL: https://issues.apache.org/jira/browse/HBASE-17676
> Project: HBase
>  Issue Type: Improvement
>  Components: Performance
>Affects Versions: 2.0
>Reporter: Yu Li
>

[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-22 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-17676:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 17s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 
0s {color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s 
{color} | {color:red} The patch doesn't appear to include any new or modified 
tests. Please justify why no new tests are needed for this patch. Also please 
list what manual steps were performed to verify this patch. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 
52s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 44s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
49s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
16s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 
54s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 31s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
45s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 40s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 40s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
48s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
15s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
30m 27s {color} | {color:green} Patch does not cause any errors with Hadoop 
2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha2. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 9s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 31s 
{color} | {color:green} the patch passed {color} |
| {color:red}-1{color} | {color:red} unit {color} | {color:red} 106m 53s 
{color} | {color:red} hbase-server in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
19s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 151m 31s {color} 
| {color:black} {color} |
\\
\\
|| Reason || Tests ||
| Timed out junit tests | org.apache.hadoop.hbase.TestIOFencing |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.11.2 Server=1.11.2 Image:yetus/hbase:8d52d23 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12853885/HBASE-17676.v2.patch |
| JIRA Issue | HBASE-17676 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux bb9bb03f2640 3.13.0-105-generic #152-Ubuntu SMP Fri Dec 2 
15:37:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh
 |
| git revision | master / c579cf6 |
| Default Java | 1.8.0_121 |
| findbugs | v3.0.0 |
| unit | 
https://builds.apache.org/job/PreCommit-HBASE-Build/5793/artifact/patchprocess/patch-unit-hbase-server.txt
 |
| unit test logs |  
https://builds.apache.org/job/PreCommit-HBASE-Build/5793/artifact/patchprocess/patch-unit-hbase-server.txt
 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/5793/testReport/ |
| modules | C: hbase-server U: hbase-server |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/5793/console |
| Powered by | Apache Yetus 0.3.0   http://yetus.apache.org |


This message was automatically generated.



> Get class name once for 

[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-21 Thread Yu Li (JIRA)

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

Yu Li commented on HBASE-17676:
---

Thanks [~Apache9].

HadoopQA looks good, will commit patch v3 soon if no objections.

> 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
>Affects Versions: 2.0
>Reporter: Yu Li
>Assignee: Yu Li
> Attachments: HBASE-17676.patch, HBASE-17676.v2.patch, 
> HBASE-17676.v3.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=0x7f0673835800 nid=0x4dec runnable [0x7f06721b5000]
>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)


[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-21 Thread Hadoop QA (JIRA)

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

Hadoop QA commented on HBASE-17676:
---

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 13s 
{color} | {color:blue} Docker mode activated. {color} |
| {color:green}+1{color} | {color:green} hbaseanti {color} | {color:green} 0m 
0s {color} | {color:green} Patch does not have any anti-patterns. {color} |
| {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s 
{color} | {color:green} The patch does not contain any @author tags. {color} |
| {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s 
{color} | {color:red} The patch doesn't appear to include any new or modified 
tests. Please justify why no new tests are needed for this patch. Also please 
list what manual steps were performed to verify this patch. {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 
47s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 34s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
40s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
14s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 
34s {color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 25s 
{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 
38s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 33s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 33s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 
42s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} mvneclipse {color} | {color:green} 0m 
14s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 
0s {color} | {color:green} The patch has no whitespace issues. {color} |
| {color:green}+1{color} | {color:green} hadoopcheck {color} | {color:green} 
24m 44s {color} | {color:green} Patch does not cause any errors with Hadoop 
2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7.1 2.7.2 2.7.3 or 3.0.0-alpha2. {color} |
| {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 1m 
42s {color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 24s 
{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} unit {color} | {color:green} 89m 28s 
{color} | {color:green} hbase-server in the patch passed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 
17s {color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 125m 30s {color} 
| {color:black} {color} |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=1.12.3 Server=1.12.3 Image:yetus/hbase:8d52d23 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12853877/HBASE-17676.patch |
| JIRA Issue | HBASE-17676 |
| Optional Tests |  asflicense  javac  javadoc  unit  findbugs  hadoopcheck  
hbaseanti  checkstyle  compile  |
| uname | Linux f0179d9ba0a3 4.4.0-43-generic #63-Ubuntu SMP Wed Oct 12 
13:48:03 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux |
| Build tool | maven |
| Personality | 
/home/jenkins/jenkins-slave/workspace/PreCommit-HBASE-Build/component/dev-support/hbase-personality.sh
 |
| git revision | master / c579cf6 |
| Default Java | 1.8.0_121 |
| findbugs | v3.0.0 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-HBASE-Build/5792/testReport/ |
| modules | C: hbase-server U: hbase-server |
| Console output | 
https://builds.apache.org/job/PreCommit-HBASE-Build/5792/console |
| Powered by | Apache Yetus 0.3.0   http://yetus.apache.org |


This message was automatically generated.



> 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
>Affects Versions: 2.0
>Reporter: Yu Li
>

[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-21 Thread Duo Zhang (JIRA)

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

Duo Zhang commented on HBASE-17676:
---

+1 on v3.

> 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
>Affects Versions: 2.0
>Reporter: Yu Li
>Assignee: Yu Li
> Attachments: HBASE-17676.patch, HBASE-17676.v2.patch, 
> HBASE-17676.v3.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=0x7f0673835800 nid=0x4dec runnable [0x7f06721b5000]
>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)


[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-21 Thread Duo Zhang (JIRA)

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

Duo Zhang commented on HBASE-17676:
---

Also add a reference to this issue in the comment? For example,

'In HBASE-17676 we found that getClass().getSimpleName() maybe a bottleneck so 
we store it here.'

> 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
>Affects Versions: 2.0
>Reporter: Yu Li
>Assignee: Yu Li
> Attachments: HBASE-17676.patch, HBASE-17676.v2.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=0x7f0673835800 nid=0x4dec runnable [0x7f06721b5000]
>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)


[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-21 Thread Yu Li (JIRA)

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

Yu Li commented on HBASE-17676:
---

bq. getClass().getSimpleName() is that costly?
"several" in description means 4 or 5 threads out of 192, not too much but 
still worth the improvement (smile)

bq. Maybe 'implName'? And add a comment to say that it is usually used as the 
prefix for logging or tracing.
Ok, let me update the patch, thanks.

> 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
>Affects Versions: 2.0
>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=0x7f0673835800 nid=0x4dec runnable [0x7f06721b5000]
>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)


[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-21 Thread Duo Zhang (JIRA)

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

Duo Zhang commented on HBASE-17676:
---

Suggest giving the className field to a more meaningful name. Maybe 'implName'? 
And add a comment to say that it is usually used as the prefix for logging or 
tracing. Otherwise it will be confusing.

> 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
>Affects Versions: 2.0
>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=0x7f0673835800 nid=0x4dec runnable [0x7f06721b5000]
>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)


[jira] [Commented] (HBASE-17676) Get class name once for all in AbstractFSWAL

2017-02-21 Thread Anoop Sam John (JIRA)

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

Anoop Sam John commented on HBASE-17676:


getClass().getSimpleName()  is that costly?  Seeing the subject, I thought it 
speaks abt reading the class name from a config.  

> 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
>Affects Versions: 2.0
>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=0x7f0673835800 nid=0x4dec runnable [0x7f06721b5000]
>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)