You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by GitBox <gi...@apache.org> on 2021/07/05 09:26:32 UTC

[GitHub] [hbase] wchevreuil commented on a change in pull request #3389: HBASE-25392 Direct insert compacted HFiles into data directory.

wchevreuil commented on a change in pull request #3389:
URL: https://github.com/apache/hbase/pull/3389#discussion_r663780661



##########
File path: hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/CacheConfig.java
##########
@@ -291,12 +291,36 @@ public void setCacheDataOnWrite(boolean cacheDataOnWrite) {
    * cacheIndexesOnWrite
    * cacheBloomsOnWrite
    */
-  public void enableCacheOnWrite() {
+  public void enableCacheOnWriteForCompactions() {
     this.cacheDataOnWrite = true;
     this.cacheIndexesOnWrite = true;
     this.cacheBloomsOnWrite = true;
   }
 
+  /**
+   * If hbase.rs.cachecompactedblocksonwrite configuration is set to true and
+   * 'totalCompactedFilesSize' is lower than 'cacheCompactedDataOnWriteThreshold',
+   * enables cache on write for below properties:
+   * - cacheDataOnWrite
+   * - cacheIndexesOnWrite
+   * - cacheBloomsOnWrite
+   *
+   * Otherwise, sets 'cacheDataOnWrite' only to false.
+   *
+   * @param totalCompactedFilesSize the total size of compacted files.
+   * @return true if the checks mentioned above pass and the cache is enabled, false otherwise.
+   */
+  public boolean enableCacheOnWriteForCompactions(long totalCompactedFilesSize) {

Review comment:
       Yeah, this logic was moved here from `HStore.createWriterInTmp` (as you noticed later on your following comment). Because now we override the writer creation in DirectStoreCompactor to not use this `HStore.createWriterInTmp`, we would need to duplicate this logic there, but since `CacheConfig` already has all the info required to decide on this, thought about moving it to `CacheConfig`. 
   
   I reckon naming and cohesion is not been great, but I was just trying to concentrate on the original problem here of allowing compacting files getting created in the store directory, without the need for tmp dirs and renames.




-- 
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-unsubscribe@hbase.apache.org

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