I see. So if a hfile has a long scanner job refer to it, after it is minor
compacted, it will be moved to /hbase/.archive. But once that scanner job
complete, it should be cleaned up from /hbase/.archive (with 5 minutes TTL).



public static final String TTL_CONF_KEY = "hbase.master.hfilecleaner.ttl";
  // default ttl = 5 minutes
  private static final long DEFAULT_TTL = 60000 * 5;

Thanks
Tian-Ying

On Fri, Jun 5, 2015 at 1:25 PM, Vladimir Rodionov <[email protected]>
wrote:

> HBase moves old hfiles into archive directory after compaction is finished.
> Compacted files are not deleted
> because they can be still in use (some long running scanners) - that is why
> they get moved into archive directory.
> HBase can locate hfile in both: standard and archive directory. There is a
> separate archive cleaner agent which runs
> periodically and cleans archive from hfiles which are no longer used.
>
> -Vlad
>
> On Fri, Jun 5, 2015 at 12:25 PM, Tianying Chang <[email protected]> wrote:
>
> > Hi,
> >
> > I found that there are many hfiles saved under /hbase/.archive/table/. I
> > know when there is a  snapshot taken, the hfile might have to be saved
> > under /hbase/.archive. But when we are not even taking snapshot, I saw
> lots
> > of hfiles under /hbase/.archive. I noticed that if I run a major
> > compaction, that seems clean up lots of hfiles from /hbase/.archive. But
> > then it grows back again later.
> >
> > Wondering what else could cause hfiles stuck under /hbase/.archinve? Any
> > hint is appreciated.
> >
> > Thanks
> > Tian-YIng
> >
>

Reply via email to