[
https://issues.apache.org/jira/browse/HBASE-29099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17922861#comment-17922861
]
Hudson commented on HBASE-29099:
--------------------------------
Results for branch master
[build #1252 on
builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252/]:
(x) *{color:red}-1 overall{color}*
----
details (if available):
(x) {color:red}-1 general checks{color}
-- For more information [see general
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252/General_20Nightly_20Build_20Report/]
(/) {color:green}+1 jdk17 hadoop3 checks{color}
-- For more information [see jdk17
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252/JDK17_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(/) {color:green}+1 jdk17 hadoop ${HADOOP_THREE_VERSION} backward compatibility
checks{color}
-- For more information [see jdk17
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252/JDK17_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(/) {color:green}+1 jdk17 hadoop ${HADOOP_THREE_VERSION} backward compatibility
checks{color}
-- For more information [see jdk17
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252/JDK17_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(/) {color:green}+1 jdk17 hadoop ${HADOOP_THREE_VERSION} backward compatibility
checks{color}
-- For more information [see jdk17
report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252/JDK17_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(x) {color:red}-1 source release artifact{color}
-- Something went wrong with this stage, [check relevant console
output|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252//console].
(x) {color:red}-1 client integration test{color}
-- Something went wrong with this stage, [check relevant console
output|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1252//console].
> Avoid expensive BlockCacheKey.toString() calls when tracing is disabled
> -----------------------------------------------------------------------
>
> Key: HBASE-29099
> URL: https://issues.apache.org/jira/browse/HBASE-29099
> Project: HBase
> Issue Type: Improvement
> Components: Performance
> Affects Versions: 3.0.0-beta-1, 2.6.1, 2.5.11
> Reporter: Becker Ewing
> Assignee: Becker Ewing
> Priority: Major
> Attachments: high-block-cache-key-to-string-alloc-profile.html
>
>
> Currently, when reading a block from the BlockCache, [we always calculate
> BlockCacheKey.toString()|https://github.com/apache/hbase/blob/b89c8259c5726395c9ae3a14919bd192252ca517/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java#L1290-L1296]
> so that we can add it to the Tracing Span. In a region server running
> extremely hot (pinned at 100% CPU utilization for many hours due to a reverse
> scanning hotspot), I noticed that in an allocation profile—see attached—of
> the region server that almost 9% of all allocations were to calculate
> BlockCacheKey.toString() which I found to be rather unusual.
>
> Given that BlockCacheKey.toString() is only used to enhance traceability of
> region servers, it feels like we should be able to skip calling this
> expensive function is we can determine that tracing is disabled.
>
> Note: this function was already identified as inefficient and had it's
> performance optimized as part of HBASE-19684. I'm not certain whether we can
> do much better than it's current implementation.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)