[
https://issues.apache.org/jira/browse/HBASE-14227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14701104#comment-14701104
]
Jingcheng Du commented on HBASE-14227:
--------------------------------------
Go through the code, I think we can fold these mob APIs into {{void
compactRegion(final byte[] regionName, final byte[] columnFamily)}} and {{void
majorCompactRegion(final byte[] regionName, final byte[] columnFamily)}}.
# We could know whether it's a mob region by region name.
# Issue the compaction from admin by passing region name and column
name(optional).
I think this can work.
> Fold special cased MOB APIs into existing APIs
> ----------------------------------------------
>
> Key: HBASE-14227
> URL: https://issues.apache.org/jira/browse/HBASE-14227
> Project: HBase
> Issue Type: Task
> Components: mob
> Affects Versions: 2.0.0
> Reporter: Andrew Purtell
> Priority: Blocker
> Fix For: 2.0.0
>
>
> There are a number of APIs that came in with MOB that are not new actions for
> HBase, simply new actions for a MOB implementation:
> - compactMob
> - compactMobs
> - majorCompactMob
> - majorCompactMobs
> - getMobCompactionState
> And in HBaseAdmin:
> - validateMobColumnFamily
> Remove these special cases from the Admin API where possible by folding them
> into existing APIs.
> We definitely don't need one method for a singleton and another for
> collections.
> Ideally we will not have any APIs named *Mob when finished, whether MOBs are
> in use on a table or not should be largely an internal detail. Exposing as
> schema option would be fine, this conforms to existing practice for other
> features.
> Marking critical because I think removing the *Mob special cased APIs should
> be a precondition for release of this feature either in 2.0 or as a backport.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)