[
https://issues.apache.org/jira/browse/HBASE-26543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17454247#comment-17454247
]
Sean Busbey commented on HBASE-26543:
-------------------------------------
also this broke passing arguments to IRB or leaving them around for a passed
script to process.
e.g. in HBase 2.3 (NB {{-f}} is the IRB flag for "ignore ~/.irbrc") :
{code}
(base) sbusbey@Seans-MacBook-Pro hbase-2.3.7 % cat ~/.irbrc
puts "reading from ~/.irbrc"
(base) sbusbey@Seans-MacBook-Pro hbase-2.3.7 % cat ../tmp/rely_on_argv.rb
if ARGV.length > 0
puts "Pulled out cli option for use in script: #{ARGV.shift}"
end
(base) sbusbey@Seans-MacBook-Pro hbase-2.3.7 % ./bin/hbase shell
../tmp/rely_on_argv.rb foobar
2021-12-06 15:47:34,946 WARN [main] util.NativeCodeLoader: Unable to load
native-hadoop library for your platform... using builtin-java classes where
applicable
Pulled out cli option for use in script: foobar
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/2.0/book.html#shell
Version 2.3.7, r8b2f5141e900c851a2b351fccd54b13bcac5e2ed, Tue Oct 12 16:38:55
UTC 2021
Took 0.0007 seconds
reading from ~/.irbrc
hbase(main):001:0> exit
(base) sbusbey@Seans-MacBook-Pro hbase-2.3.7 % ./bin/hbase shell
../tmp/rely_on_argv.rb foobar -f
2021-12-06 15:47:43,730 WARN [main] util.NativeCodeLoader: Unable to load
native-hadoop library for your platform... using builtin-java classes where
applicable
Pulled out cli option for use in script: foobar
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/2.0/book.html#shell
Version 2.3.7, r8b2f5141e900c851a2b351fccd54b13bcac5e2ed, Tue Oct 12 16:38:55
UTC 2021
Took 0.0007 seconds
hbase(main):001:0> exit
(base) sbusbey@Seans-MacBook-Pro hbase-2.3.7 %
{code}
now fails:
{code}
(base) sbusbey@Seans-MacBook-Pro hbase-3.0.0-alpha-2-SNAPSHOT % ./bin/hbase
shell ../tmp/rely_on_argv.rb foobar
2021-12-06T15:44:29,964 WARN [main] util.NativeCodeLoader: Unable to load
native-hadoop library for your platform... using builtin-java classes where
applicable
reading from ~/.irbrc
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/book.html#shell
Version 3.0.0-alpha-2-SNAPSHOT, r39b8ce6139f2eeb7f0a8c94b6aafeac321464dc3, Sun
Dec 5 03:13:11 CST 2021
Took 0.0011 seconds
hbase:001:0> exit
(base) sbusbey@Seans-MacBook-Pro hbase-3.0.0-alpha-2-SNAPSHOT % ./bin/hbase
shell ../tmp/rely_on_argv.rb foobar -f
classpath:/jar-bootstrap.rb: invalid option -- f
GetoptLong::InvalidOption: invalid option -- f
set_error at
uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/getoptlong.rb:395
get at
uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/getoptlong.rb:572
each at
uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/getoptlong.rb:603
loop at org/jruby/RubyKernel.java:1442
each at
uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/getoptlong.rb:602
<main> at classpath:/jar-bootstrap.rb:98
{code}
> HBase shell no longer properly parses several args
> --------------------------------------------------
>
> Key: HBASE-26543
> URL: https://issues.apache.org/jira/browse/HBASE-26543
> Project: HBase
> Issue Type: Bug
> Components: shell
> Affects Versions: 3.0.0-alpha-1, 2.5.0
> Reporter: Sean Busbey
> Assignee: Sean Busbey
> Priority: Blocker
> Fix For: 2.5.0, 3.0.0-alpha-2
>
>
> shell cli arg parsing is broken:
> * debug is eating a possible arg
> * -D handling is consuming part of ARGV without declaring it
> * non-interactive mode is eating a possible arg
> * top level definitions is eating a possible arg
> * script2run is being ignored entirely
--
This message was sent by Atlassian Jira
(v8.20.1#820001)