[
https://issues.apache.org/jira/browse/HBASE-22874?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16910872#comment-16910872
]
Duo Zhang commented on HBASE-22874:
-----------------------------------
OK, jira is back finnaly.
The IA.Public means all the public API can not be changed unless it is
deprecated for a whole major version, this is a very strong guarantee, so when
providing an IA.Public stuff you need to be very careful.
For IA.LimitedPrivate("TOOLS"), it means that you can invoke it from command
line, with the ToolRunner, and usually we will give it a special name, such as
our 'pe' and 'ltt'. And if want to use the tool in code, typically, the way is
to use it like this
{code:java}
ToolRunner.run(conf, new Tool(), args);
{code}
So the guarantee here is that, it will extends the Tool interface and can be
invoked through the ToolRunner. And maybe we should always provide a default
constructor probably we do not...
> Canary should not be IA.Public
> ------------------------------
>
> Key: HBASE-22874
> URL: https://issues.apache.org/jira/browse/HBASE-22874
> Project: HBase
> Issue Type: Bug
> Components: canary
> Reporter: Duo Zhang
> Priority: Blocker
> Fix For: 3.0.0, 2.3.0, 2.0.6, 2.2.1, 2.1.6
>
>
> It can be marked as IA.LimitedPrivate(TOOLS).
--
This message was sent by Atlassian Jira
(v8.3.2#803003)