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

Hudson commented on HBASE-30177:
--------------------------------

Results for branch master
        [build #1465 on 
builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1465/]: 
(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/1465/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/1465/JDK17_20Nightly_20Build_20Report_20_28Hadoop3_29/]


> Make block caching configurable for MOB compaction reads
> --------------------------------------------------------
>
>                 Key: HBASE-30177
>                 URL: https://issues.apache.org/jira/browse/HBASE-30177
>             Project: HBase
>          Issue Type: Improvement
>          Components: mob, regionserver
>            Reporter: Xiao Liu
>            Assignee: Xiao Liu
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 2.7.0, 3.0.0-beta-2, 2.5.16, 2.6.7
>
>
> {\{DefaultMobStoreCompactor}} currently resolves existing MOB reference cells 
> with block caching enabled. During a user-triggered major MOB compaction, 
> this can cause large amounts of MOB file data read by the background 
> compaction task to be inserted into the RegionServer block cache.
> For large MOB-enabled tables, these compaction reads are often one-time reads 
> over cold MOB files. Caching those blocks may evict hotter blocks used by 
> foreground reads, reducing block cache hit ratio and increasing read latency 
> while or after MOB compaction runs.
> This issue proposes adding a configuration option to control whether MOB 
> compaction should cache blocks when resolving existing MOB references.
> Proposed configuration:
> {code:language=plaintext|borderStyle=solid|theme=RDark|linenumbers=true|collapse=false}
> hbase.mob.compaction.cache.blocks
> {code}
> Default value:
> {code:language=plaintext|borderStyle=solid|theme=RDark|linenumbers=true|collapse=false}
> true
> {code}
> The default should remain \{{true}} to preserve the existing behavior. 
> Operators that want to avoid block cache pollution from background MOB 
> compaction reads can set it to \{{false}}.
> Scope:
> * Add a new MOB compaction-specific config.
> * Use the config in \{{DefaultMobStoreCompactor}} when calling 
> \{{HMobStore.resolve}}.
> * Keep normal MOB reads and existing scan/get cache behavior unchanged.
> * Add unit tests for the default value and disabled configuration.
> This gives operators a way to reduce cache churn during large MOB compactions 
> without changing the default behavior for existing deployments.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to