[
https://issues.apache.org/jira/browse/HBASE-14227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14701534#comment-14701534
]
Andrew Purtell commented on HBASE-14227:
----------------------------------------
Agreed overloading existing admin methods with a new option with an additional
parameter is a better compromise.
What we are doing here is exposing more control over compaction IO scheduling.
We should update the APIs with that in mind and not make it MOB specific.
Rather than a boolean I'd suggest a set of flags... I guess the Java idiom is a
List of Enum... for selecting what "types" of CFs to include in the compaction.
Or, something more flexible (but crazier) like a Filter or Comparator.
> 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)