You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2018/12/14 00:38:04 UTC

[jira] [Commented] (HBASE-17912) Avoid major compactions on region server startup

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

Hudson commented on HBASE-17912:
--------------------------------

SUCCESS: Integrated in Jenkins build HBase-1.3-IT #509 (See [https://builds.apache.org/job/HBase-1.3-IT/509/])
HBASE-17912 Avoid major compactions on region server startup (apurtell: rev 35907e401e7dac0ef9c23899d63393577e57dcec)
* (edit) hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java


> Avoid major compactions on region server startup
> ------------------------------------------------
>
>                 Key: HBASE-17912
>                 URL: https://issues.apache.org/jira/browse/HBASE-17912
>             Project: HBase
>          Issue Type: Improvement
>          Components: Compaction
>    Affects Versions: 1.3.1, 0.98.24, 2.0.0
>            Reporter: Geoffrey Jacoby
>            Assignee: Geoffrey Jacoby
>            Priority: Major
>             Fix For: 1.4.0, 1.3.3, 2.0.0
>
>         Attachments: HBASE-17912.patch
>
>
> The HRegionServer.CompactionChecker chore wakes up every 10s and for each store in each region mods against a chore frequency (by default slightly under 3 hours) to see if it's time to check if a major compaction is necessary for that store. 
> The check to see if it needs to check for major compactions is calculated by 
>     if (iteration % multiplier != 0) continue;
> where iteration is the number of times the chore has woken up. 
> Because 0 % anything is 0, this will always check for necessary major compactions on each store when this chore is first run after the region server starts up. This can result in compaction storms when doing a rolling restart, because, for example, the new instance of the region server might get a lower jitter value than the old one had.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)