[ https://issues.apache.org/jira/browse/HBASE-15055?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15075621#comment-15075621 ]
Eungsop Yoo commented on HBASE-15055: ------------------------------------- {quote} We already have TestMajorCompaction Can the new test be folded into TestMajorCompaction ? {code} 136 long oldest = getOldest(candidates.get(pos), System.currentTimeMillis()); {code} Use EnvironmentEdgeManager {quote} OK. I did them. {quote} 138 if (cfTtl != HConstants.FOREVER && oldest > cfTtl) 139 return candidates; We should check the remaining StoreFile instead of returning immediately, right ? {quote} No. We have to return immediately if there is any TTL expiration because of the below code. All candidates should be kept. {code} 101 isAllFiles = candidateFiles.size() == candidateSelection.size(); {code} > Major compaction is not triggered when both of TTL and > hbase.hstore.compaction.max.size are set > ----------------------------------------------------------------------------------------------- > > Key: HBASE-15055 > URL: https://issues.apache.org/jira/browse/HBASE-15055 > Project: HBase > Issue Type: Bug > Reporter: Eungsop Yoo > Priority: Minor > Attachments: HBASE-15055-v1.patch, HBASE-15055.patch > > > Some large files may be skipped by hbase.hstore.compaction.max.size in > candidate selection. It causes skipping of major compaction. So the TTL > expired records are still remained in the disks and keep consuming disks. > To resolve this issue, I suggest that to skip large files only if there is no > TTL expired record. -- This message was sent by Atlassian JIRA (v6.3.4#6332)