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

Appy commented on HBASE-16078:
------------------------------

bq. execution time is 3-4 seconds faster then piping command to shell
That's good, but in my opinion, that doesn't warranty extra tool. If it was 
like 30 sec, sure why not. (But indirectly, that would have meant poor shell 
UX, and we would have first tried improving that.)

bq. it is simple single propose tool intend for usage in bash scripts which 
needs to manage balancer, and i believe is useful for critical operations 
scripts like graceful_stop.sh and rolling-restart.sh where we need to do things 
precise and simple as possible
I believe users depend on shell for lot of critical operations (manage tables, 
replication nodes, etc). Maybe justify why the tool is any better than shell 
when it comes to reliability? Also, i think piping shell command is simple 
enough.

bq. it is independent and probably will be less touched then hbase shell code 
and that way will decrease possibility of scripts get broken (i should probably 
put note in code saying that it is intended for internal use only, used by 
graceful_stop.sh and rolling-restart.sh and that changes should be propagated 
to scripts)
I am sorry but I don't see it as independent, I see it as duplicating things. 
And duplication can't be used to avoid compat breakages. If I blow up your 
idea, basically we can do the same thing for Admin, make a Admin2 and say that 
we'll touch it less and so it'll break less.
If the script requirement is justified and we do decide to keep it, it's 
counter intuitive that we keep something not changing (best compat guarantee) 
for internal use. More than devs, it's the users who require better compat 
guarantees.


The direction is not to create new set of tools, but define better compat 
guarantees of our shell interface using interactive and non-interactive modes. 
[Here's|https://issues.apache.org/jira/browse/HBASE-16044?focusedCommentId=15347364&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15347364]
 the gist. I plan to get it in 2.0. Let me know what you think about it. 

> Create java cli tool for managing balancer states for scripts usage
> -------------------------------------------------------------------
>
>                 Key: HBASE-16078
>                 URL: https://issues.apache.org/jira/browse/HBASE-16078
>             Project: HBase
>          Issue Type: Improvement
>          Components: scripts, util
>    Affects Versions: 2.0.0
>            Reporter: Samir Ahmic
>            Assignee: Samir Ahmic
>             Fix For: 2.0.0
>
>         Attachments: HBASE-16078_v1.patch, HBASE-16078_v2.patch
>
>
> This ticket is result of discussion in 
> [HBASE16044|https://issues.apache.org/jira/browse/HBASE-16044] to avoid 
> "hbase shell" output parsing hacks. 



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

Reply via email to