You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2015/04/22 02:35:00 UTC

[jira] [Updated] (HBASE-8892) should pick the files as older as possible also while hasReferences

     [ https://issues.apache.org/jira/browse/HBASE-8892?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Purtell updated HBASE-8892:
----------------------------------
    Resolution: Incomplete
      Assignee:     (was: Liang Xie)
        Status: Resolved  (was: Patch Available)

> should pick the files as older as possible also while hasReferences
> -------------------------------------------------------------------
>
>                 Key: HBASE-8892
>                 URL: https://issues.apache.org/jira/browse/HBASE-8892
>             Project: HBase
>          Issue Type: Bug
>          Components: Compaction
>    Affects Versions: 0.94.9
>            Reporter: Liang Xie
>            Priority: Minor
>         Attachments: HBase-8892-0.94.txt
>
>
> Currently, while hasReferences for compactSelection, and if compactSelection.getFilesToCompact() has more than maxFilesToCompact files, we clear the files from beginning, it's different with the normal minor compaction ratio based policy, which tries to do compactSelection from older to newer ones as possible.
> {code}
>       } else if (compactSelection.getFilesToCompact().size() > this.maxFilesToCompact) {
>         // all files included in this compaction, up to max
>         int pastMax = compactSelection.getFilesToCompact().size() - this.maxFilesToCompact;
>         compactSelection.getFilesToCompact().subList(0, pastMax).clear();
> {code}
> It makes the beginning files more difficult to be picked up in future's minor compaction stage.
> IMHO, it should be like this:
> {code}
>         compactSelection.getFilesToCompact()
>             .subList(this.maxFilesToCompact, compactSelection.getFilesToCompact().size())
>             .clear();
> {code}
> It's not a big issue, since occurs while hasReferences returns true only.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)