diff --git beeline/src/java/org/apache/hive/beeline/BeeLine.java beeline/src/java/org/apache/hive/beeline/BeeLine.java index 2f3350e..f3fde11 100644 --- beeline/src/java/org/apache/hive/beeline/BeeLine.java +++ beeline/src/java/org/apache/hive/beeline/BeeLine.java @@ -1160,7 +1160,8 @@ void showWarnings(SQLWarning warn) { String getPrompt() { - if (getDatabaseConnection() == null || getDatabaseConnection().getUrl() == null) { + if (getDatabaseConnection() == null || getDatabaseConnection().getUrl() == null || + !getDatabaseConnection().isConnected()) { return "beeline> "; } else { return getPrompt(getDatabaseConnections().getIndex() diff --git beeline/src/java/org/apache/hive/beeline/DatabaseConnection.java beeline/src/java/org/apache/hive/beeline/DatabaseConnection.java index 00b49af..e9447c0 100644 --- beeline/src/java/org/apache/hive/beeline/DatabaseConnection.java +++ beeline/src/java/org/apache/hive/beeline/DatabaseConnection.java @@ -53,7 +53,11 @@ private final Properties info; private Schema schema = null; private Completor sqlCompletor = null; + private boolean isConnected = false; + public boolean isConnected() { + return isConnected; + } public DatabaseConnection(BeeLine beeLine, String driver, String url, Properties info) throws SQLException { @@ -183,7 +187,7 @@ public Connection getConnection() throws SQLException { if (connection != null) { return connection; } - connect(); + isConnected = connect(); return connection; } @@ -207,6 +211,7 @@ public void close() { } finally { setConnection(null); setDatabaseMetaData(null); + isConnected = false; } }