[ https://issues.apache.org/jira/browse/HBASE-3723?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13016737#comment-13016737 ]
Hudson commented on HBASE-3723: ------------------------------- Integrated in HBase-TRUNK #1836 (See [https://hudson.apache.org/hudson/job/HBase-TRUNK/1836/]) HBASE-3723 Major compact should be done when there is only one storefile and some keyvalue is outdated > Major compact should be done when there is only one storefile and some > keyvalue is outdated. > -------------------------------------------------------------------------------------------- > > Key: HBASE-3723 > URL: https://issues.apache.org/jira/browse/HBASE-3723 > Project: HBase > Issue Type: Bug > Components: regionserver > Affects Versions: 0.90.0, 0.90.1 > Reporter: zhoushuaifeng > Fix For: 0.90.2 > > Attachments: hbase-3723.txt > > > In the function store.isMajorCompaction: > if (filesToCompact.size() == 1) { > // Single file > StoreFile sf = filesToCompact.get(0); > long oldest = > (sf.getReader().timeRangeTracker == null) ? > Long.MIN_VALUE : > now - sf.getReader().timeRangeTracker.minimumTimestamp; > if (sf.isMajorCompaction() && > (this.ttl == HConstants.FOREVER || oldest < this.ttl)) { > if (LOG.isDebugEnabled()) { > LOG.debug("Skipping major compaction of " + this.storeNameStr + > " because one (major) compacted file only and oldestTime " + > oldest + "ms is < ttl=" + this.ttl); > } > } > } else { > When there is only one storefile in the store, and some keyvalues' TTL are > overtime, the majorcompactchecker should send this region to the compactquene > and run a majorcompact to clean these outdated data. But according to the > code in 0.90.1, it will do nothing. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira