This is an automated email from the ASF dual-hosted git repository.

rmattingly pushed a commit to branch branch-3
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-3 by this push:
     new 91d0feb2d9d HBASE-29099 Avoid expensive BlockCacheKey.toString() calls 
when tracing is disabled (#6642) (#6645)
91d0feb2d9d is described below

commit 91d0feb2d9d71462053fe14c39dbf1bdf194cd37
Author: Ray Mattingly <[email protected]>
AuthorDate: Fri Jan 31 18:27:39 2025 -0500

    HBASE-29099 Avoid expensive BlockCacheKey.toString() calls when tracing is 
disabled (#6642) (#6645)
    
    Signed-off-by: Ray Mattingly <[email protected]>
    Co-authored-by: jbewing <[email protected]>
---
 .../main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
index 64215333371..33b761645de 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
@@ -1289,11 +1289,15 @@ public abstract class HFileReaderImpl implements 
HFile.Reader, Configurable {
 
     BlockCacheKey cacheKey =
       new BlockCacheKey(path, dataBlockOffset, this.isPrimaryReplicaReader(), 
expectedBlockType);
-    Attributes attributes = Attributes.of(BLOCK_CACHE_KEY_KEY, 
cacheKey.toString());
 
     boolean useLock = false;
     IdLock.Entry lockEntry = null;
     final Span span = Span.current();
+    // BlockCacheKey#toString() is quite expensive to call, so if tracing 
isn't enabled, don't
+    // record
+    Attributes attributes = span.isRecording()
+      ? Attributes.of(BLOCK_CACHE_KEY_KEY, cacheKey.toString())
+      : Attributes.empty();
     try {
       while (true) {
         // Check cache for block. If found return.

Reply via email to