[ https://issues.apache.org/jira/browse/HBASE-4024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Yu updated HBASE-4024: -------------------------- Attachment: 4024.txt > 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.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