[ https://issues.apache.org/jira/browse/HBASE-21011?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tak Lon (Stephen) Wu updated HBASE-21011: ----------------------------------------- Description: There is a corner case when cleaner chore for HFiles and oldwals is disabled, admin/user needs to manually execute admin command {{cleaner_chore_run}} to clean the old HFiles and oldwals. Existing logic of {{cleaner_chore_run}} is to [firstly trigger the HFiles cleaner and then oldwals cleaner|https://github.com/taklwu/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java#L1414-L1420], and only return succeed if both completes. but when running this {{cleaner_chore_run}} command, there is a potential use case that admin would like trigger the cleaner for only oldwals or hfiles but still keep the automatic cleaner chore disabled. So, this change aims to provide support for this corner case, and provide flexibility for those user with cleaner chore disabled by default to execute admin CLI to run oldwals and HFiles cleaning procedure individually. NOTE that we keep the default as running both of them for backward compatibility, e.g. the proposed admin CLI options are {noformat} hbase> cleaner_chore_run hbase> cleaner_chore_run 'hfiles' hbase> cleaner_chore_run 'oldwals' {noformat} was: Existing logic of cleaner chore is first execute HFiles cleaner and then oldwals cleaner in a request, and only return succeed if both completes. There is a use case of running only oldwals cleaner because oldwals uses all the disk space, and running HFiles cleaner is too slow because either the amount of old HFiles or directories are too much. So, this change provide the flexibility for those disabled cleaner by default or would like to execute admin command to run oldwals and HFiles cleaning procedure individually. NOTE that we keep the default as running both of them for backward compatibility, e.g. the proposed admin CLI options are {noformat} hbase> cleaner_chore_run hbase> cleaner_chore_run 'hfiles' hbase> cleaner_chore_run 'oldwals' {noformat} > Provide CLI option to run oldwals and hfiles cleaner separately > --------------------------------------------------------------- > > Key: HBASE-21011 > URL: https://issues.apache.org/jira/browse/HBASE-21011 > Project: HBase > Issue Type: Improvement > Components: Admin, Client > Affects Versions: 3.0.0, 1.4.6, 2.1.1 > Reporter: Tak Lon (Stephen) Wu > Assignee: Tak Lon (Stephen) Wu > Priority: Minor > Fix For: 3.0.0 > > > There is a corner case when cleaner chore for HFiles and oldwals is disabled, > admin/user needs to manually execute admin command {{cleaner_chore_run}} to > clean the old HFiles and oldwals. Existing logic of {{cleaner_chore_run}} is > to [firstly trigger the HFiles cleaner and then oldwals > cleaner|https://github.com/taklwu/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java#L1414-L1420], > and only return succeed if both completes. > but when running this {{cleaner_chore_run}} command, there is a potential use > case that admin would like trigger the cleaner for only oldwals or hfiles but > still keep the automatic cleaner chore disabled. So, this change aims to > provide support for this corner case, and provide flexibility for those user > with cleaner chore disabled by default to execute admin CLI to run oldwals > and HFiles cleaning procedure individually. > NOTE that we keep the default as running both of them for backward > compatibility, e.g. the proposed admin CLI options are > {noformat} > hbase> cleaner_chore_run > hbase> cleaner_chore_run 'hfiles' > hbase> cleaner_chore_run 'oldwals' > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)