HIVE-12018 : beeline --help doesn't return to original prompt (Mohammad Islam via Ashutosh Chauhan)
Signed-off-by: Ashutosh Chauhan <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/556877c2 Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/556877c2 Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/556877c2 Branch: refs/heads/llap Commit: 556877c24a335f207d74bb7daa6949af227ffe60 Parents: 1e0c508 Author: Mohammad Kamrul Islam <[email protected]> Authored: Fri Oct 2 15:00:00 2015 -0800 Committer: Ashutosh Chauhan <[email protected]> Committed: Wed Oct 7 09:31:33 2015 -0700 ---------------------------------------------------------------------- beeline/src/java/org/apache/hive/beeline/BeeLine.java | 4 ++++ beeline/src/java/org/apache/hive/beeline/BeeLineOpts.java | 9 +++++++++ .../test/org/apache/hive/beeline/TestBeelineArgParsing.java | 1 + 3 files changed, 14 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/556877c2/beeline/src/java/org/apache/hive/beeline/BeeLine.java ---------------------------------------------------------------------- diff --git a/beeline/src/java/org/apache/hive/beeline/BeeLine.java b/beeline/src/java/org/apache/hive/beeline/BeeLine.java index f2aeac5..69e9418 100644 --- a/beeline/src/java/org/apache/hive/beeline/BeeLine.java +++ b/beeline/src/java/org/apache/hive/beeline/BeeLine.java @@ -727,6 +727,7 @@ public class BeeLine implements Closeable { if (cl.hasOption("help")) { usage(); + getOpts().setHelpAsked(true); return 0; } @@ -844,6 +845,9 @@ public class BeeLine implements Closeable { defaultConnect(false); } + if (getOpts().isHelpAsked()) { + return 0; + } if (getOpts().getScriptFile() != null) { return executeFile(getOpts().getScriptFile()); } http://git-wip-us.apache.org/repos/asf/hive/blob/556877c2/beeline/src/java/org/apache/hive/beeline/BeeLineOpts.java ---------------------------------------------------------------------- diff --git a/beeline/src/java/org/apache/hive/beeline/BeeLineOpts.java b/beeline/src/java/org/apache/hive/beeline/BeeLineOpts.java index 8e1d11b..7a6ee5f 100644 --- a/beeline/src/java/org/apache/hive/beeline/BeeLineOpts.java +++ b/beeline/src/java/org/apache/hive/beeline/BeeLineOpts.java @@ -100,6 +100,7 @@ class BeeLineOpts implements Completer { private Map<String, String> hiveVariables = new HashMap<String, String>(); private Map<String, String> hiveConfVariables = new HashMap<String, String>(); + private boolean helpAsked; public BeeLineOpts(BeeLine beeLine, Properties props) { this.beeLine = beeLine; @@ -558,5 +559,13 @@ class BeeLineOpts implements Completer { public HiveConf getConf() { return conf; } + + public void setHelpAsked(boolean helpAsked) { + this.helpAsked = helpAsked; + } + + public boolean isHelpAsked() { + return helpAsked; + } } http://git-wip-us.apache.org/repos/asf/hive/blob/556877c2/beeline/src/test/org/apache/hive/beeline/TestBeelineArgParsing.java ---------------------------------------------------------------------- diff --git a/beeline/src/test/org/apache/hive/beeline/TestBeelineArgParsing.java b/beeline/src/test/org/apache/hive/beeline/TestBeelineArgParsing.java index 702805f..e529057 100644 --- a/beeline/src/test/org/apache/hive/beeline/TestBeelineArgParsing.java +++ b/beeline/src/test/org/apache/hive/beeline/TestBeelineArgParsing.java @@ -206,6 +206,7 @@ public class TestBeelineArgParsing { TestBeeline bl = new TestBeeline(); String args[] = new String[] {"--help"}; Assert.assertEquals(0, bl.initArgs(args)); + Assert.assertEquals(true, bl.getOpts().isHelpAsked()); } /**
