[
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