You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2011/07/27 06:41:10 UTC

[jira] [Updated] (HBASE-4024) Major compaction may not be triggered, even though region server log says it is triggered

     [ https://issues.apache.org/jira/browse/HBASE-4024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack updated HBASE-4024:
-------------------------

      Resolution: Fixed
    Hadoop Flags: [Reviewed]
          Status: Resolved  (was: Patch Available)

This was committed a while back.

> Major compaction may not be triggered, even though region server log says it is triggered
> -----------------------------------------------------------------------------------------
>
>                 Key: HBASE-4024
>                 URL: https://issues.apache.org/jira/browse/HBASE-4024
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>            Reporter: Suraj Varma
>            Assignee: Ted Yu
>            Priority: Trivial
>              Labels: newbie
>             Fix For: 0.92.0
>
>         Attachments: 4024-v2.txt, 4024-v3.txt, 4024.txt
>
>
> The trunk version of regionserver/Store.java, method   List<StoreFile> compactSelection(List<StoreFile> candidates) has this code to determine whether major compaction should be done or not: 
>     // major compact on user action or age (caveat: we have too many files)
>     boolean majorcompaction = (forcemajor || isMajorCompaction(filesToCompact))
>       && filesToCompact.size() < this.maxFilesToCompact;
> The isMajorCompaction(filesToCompact) method internally determines whether or not major compaction is required (and logs this as "Major compaction triggered ... " log message. However, after the call, the compactSelection method subsequently applies the filesToCompact.size() < this.maxFilesToCompact check which can turn off major compaction. 
> This would result in a "Major compaction triggered" log message without actually triggering a major compaction.
> The filesToCompact.size() check should probably be moved inside the isMajorCompaction(filesToCompact) method.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira