You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jingcheng Du (JIRA)" <ji...@apache.org> on 2016/10/12 02:28:20 UTC

[jira] [Commented] (HBASE-16812) Cleanup deprecated compact() function

    [ https://issues.apache.org/jira/browse/HBASE-16812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15567315#comment-15567315 ] 

Jingcheng Du commented on HBASE-16812:
--------------------------------------

Thanks a lot [~appy].
I am afraid this HMobStore.compact method cannot be deleted, instead we have to make this method be called in hbase compaction by adding a user parameter to this method. I guess this method is missed when modifying code in HStore.compact.
This zk lock is used here to synchronize the major compaction and mob compaction, which can avoid the deleted cells being alive again. So I think the zk lock has to be there.
I am thinking to implement update cells instead of put only for mob compaction, which is a update cell is regarded as deleted when there is no more non-update cells. This can remove all locks in mob compaction. How about removing the zk locks after this is implemented?

> Cleanup deprecated compact() function
> -------------------------------------
>
>                 Key: HBASE-16812
>                 URL: https://issues.apache.org/jira/browse/HBASE-16812
>             Project: HBase
>          Issue Type: Task
>            Reporter: Appy
>            Assignee: Appy
>            Priority: Minor
>         Attachments: HBASE-16812.master.001.patch
>
>
> compact(CompactionContext compaction, CompactionThroughputController throughputController) is [deprecated in 1.2.0 release|https://github.com/apache/hbase/blob/rel/1.2.0/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/Store.java#L222].
> Store.java is also marked limited private.
> Context: I was cleaning up zk table lock which is also used in that method's [override|https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HMobStore.java#L460] in HMobStore.
> This method isn't being called from anywhere except CompactionTool (which creates HStore object, not HMobStore object).
> [~jingcheng.du@intel.com] Can you PTAL and help me understand what's going on.



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