Description
Changes to o.a.a.shell.Shell have broken the ChangeSecret tool. When running o.a.a.server.util.ChangeSecret using the bin/accumulo script, another thread running the Shell will also have an open input stream interfering with the input of the password. This is due to the ServiceLoader creating an instance of the Shell using the no arg constructor, which creates an instance of the jline ConsoleReader.
There are two options to fix this bug:
1. Make the no-arg constructor in the Shell do less work. (this should be
easy, because it's only called by Shell.main, and main can just pass the
parameters that the no-arg constructor was assuming)
2. Move the KeywordExecutable stuffs for Shell into a minimal
launcher/factory class for Shell; see **/MasterExecutable.java for another
case where I had to do this.
Attachments
Issue Links
- is related to
-
ACCUMULO-4441 ConsoleReader created in Main breaks any external jars use of Console.readLine
- Resolved
- links to