[ 
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)

Reply via email to