jhungund commented on code in PR #5866:
URL: https://github.com/apache/hbase/pull/5866#discussion_r1591912584


##########
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileWriterImpl.java:
##########
@@ -555,16 +563,33 @@ private void writeInlineBlocks(boolean closing) throws 
IOException {
   private void doCacheOnWrite(long offset) {
     cacheConf.getBlockCache().ifPresent(cache -> {
       HFileBlock cacheFormatBlock = blockWriter.getBlockForCaching(cacheConf);
+      BlockCacheKey key = buildBlockCacheKey(offset, cacheFormatBlock);
+      if (!shouldCacheBlock(cache, key)) {

Review Comment:
   I see that shouldCacheBlock internally makes a call to isHotData (key), 
which would go all the way to fetch the file metadata and decide if the file is 
hot or not. Would this be called per block? If so, would it impact the 
performance adversely? Can we somehow restrict these traversals to once per 
file instead of once per block.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@hbase.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to