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

Sean Busbey commented on HBASE-16044:
-------------------------------------

generally, I think of hbase shell output as covered by our "operational 
compatibility" promise in the versions section of the ref guide: no breaking 
changes in maintenance releases, but minor and major versions are fair game.

While I agree that we should make sure our internal use is consistent (and 
probably relying on java classes instead of the overhead of jruby), I don't 
think our current operational tooling is at a place where we can expect folks 
not to build stuff on top of what comes out of the shell. Our other options are 
just too limited. We even added the --non-interactive flag to make this go 
easier for folks. Including output changes behind feature flags is still fine, 
IMO.

> Fix 'hbase shell' output parsing in bash scripts
> ------------------------------------------------
>
>                 Key: HBASE-16044
>                 URL: https://issues.apache.org/jira/browse/HBASE-16044
>             Project: HBase
>          Issue Type: Bug
>          Components: scripts
>    Affects Versions: 2.0.0
>            Reporter: Samir Ahmic
>            Assignee: Samir Ahmic
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> In some of our bash scripts we are piping command in hbase shell and then 
> parsing response to define variables.  Since 'hbase shell' output format is 
> changed we are picking wrong values from output Here is example form 
> gracful_stop.sh:
> {code}
> HBASE_BALANCER_STATE=$(echo 'balance_switch false' | "$bin"/hbase --config 
> "${HBASE_CONF_DIR}" shell | tail -3 | head -1)
> {code}
> this will return "balance_switch true" instead of previous balancer  state.



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

Reply via email to