[
https://issues.apache.org/jira/browse/HBASE-14227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14701541#comment-14701541
]
Andrew Purtell commented on HBASE-14227:
----------------------------------------
I really don't like any *mob* API name of any kind. We can leak if a CF is a
MOB through schema attributes, that seems fine. Otherwise I feel it is a
layering violation. Our APIs shouldn't care what kind of CF is a CF at the
level of method names.
> 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
> Assignee: Heng Chen
> Priority: Blocker
> Fix For: 2.0.0
>
> Attachments: HBASE-14227.patch
>
>
> 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)