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

Sean Busbey commented on HBASE-23066:
-------------------------------------

I reverted d561130e82 on master branch because after revert 
{{TestCacheOnWrite}} consistently passes. with d561130e82 it consistently fails.

{code}
commit ec9bd20ec8423d49641d0d30704eaee178480d0e (HEAD -> master, origin/master, 
origin/HEAD)
Author: Sean Busbey <[email protected]>
Date:   Wed Dec 11 10:17:46 2019 -0600

    Revert "HBASE-23066 Allow cache on write during compactions when 
prefetching is (#919)"
    
    TestCacheOnWrite failing all the time.
    
    This reverts commit d561130e82c5956f0dd9fff5c6f6240a686d3d6a.
{code}

Please ensure the test works reliably before pushing again. Also please set the 
contributor info as the git author using {{--author "Some User 
<[email protected]"}}

> Allow cache on write during compactions when prefetching is enabled
> -------------------------------------------------------------------
>
>                 Key: HBASE-23066
>                 URL: https://issues.apache.org/jira/browse/HBASE-23066
>             Project: HBase
>          Issue Type: Improvement
>          Components: Compaction, regionserver
>    Affects Versions: 1.4.10
>            Reporter: Jacob LeBlanc
>            Assignee: Jacob LeBlanc
>            Priority: Minor
>             Fix For: 2.3.0, 1.6.0
>
>         Attachments: HBASE-23066.patch, performance_results.png, 
> prefetchCompactedBlocksOnWrite.patch
>
>
> In cases where users care a lot about read performance for tables that are 
> small enough to fit into a cache (or the cache is large enough), 
> prefetchOnOpen can be enabled to make the entire table available in cache 
> after the initial region opening is completed. Any new data can also be 
> guaranteed to be in cache with the cacheBlocksOnWrite setting.
> However, the missing piece is when all blocks are evicted after a compaction. 
> We found very poor performance after compactions for tables under heavy read 
> load and a slower backing filesystem (S3). After a compaction the prefetching 
> threads need to compete with threads servicing read requests and get 
> constantly blocked as a result. 
> This is a proposal to introduce a new cache configuration option that would 
> cache blocks on write during compaction for any column family that has 
> prefetch enabled. This would virtually guarantee all blocks are kept in cache 
> after the initial prefetch on open is completed allowing for guaranteed 
> steady read performance despite a slow backing file system.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to