Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 34A72200C49 for ; Fri, 17 Mar 2017 21:10:42 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 3391E160B8C; Fri, 17 Mar 2017 20:10:42 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 7FA72160B8F for ; Fri, 17 Mar 2017 21:10:40 +0100 (CET) Received: (qmail 33723 invoked by uid 500); 17 Mar 2017 20:10:39 -0000 Mailing-List: contact commits-help@geode.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@geode.apache.org Delivered-To: mailing list commits@geode.apache.org Received: (qmail 32150 invoked by uid 99); 17 Mar 2017 20:10:38 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 17 Mar 2017 20:10:38 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id F23A7F4B77; Fri, 17 Mar 2017 20:10:36 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: khowe@apache.org To: commits@geode.apache.org Date: Fri, 17 Mar 2017 20:11:11 -0000 Message-Id: <99f884fa9a7d411092c0e16fd66d6350@git.apache.org> In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [36/49] geode git commit: GEODE-2599: fix for "null" in string of dots archived-at: Fri, 17 Mar 2017 20:10:42 -0000 GEODE-2599: fix for "null" in string of dots Check for string "null" in server/locator status message Refactor server and locator launcer wait loops by using Process.isAlive instead of Process.exitValue Project: http://git-wip-us.apache.org/repos/asf/geode/repo Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/2e2992ac Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/2e2992ac Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/2e2992ac Branch: refs/heads/feature/GEODE-2420 Commit: 2e2992ac1eb2e9539300dcc0d33918e41d7f6a86 Parents: e46400d Author: Ken Howe Authored: Fri Mar 10 15:09:04 2017 -0800 Committer: Ken Howe Committed: Fri Mar 17 13:09:45 2017 -0700 ---------------------------------------------------------------------- .../cli/commands/LauncherLifecycleCommands.java | 53 ++++++++------------ 1 file changed, 22 insertions(+), 31 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/geode/blob/2e2992ac/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LauncherLifecycleCommands.java ---------------------------------------------------------------------- diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LauncherLifecycleCommands.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LauncherLifecycleCommands.java index d42d75e..3ad93ce 100755 --- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LauncherLifecycleCommands.java +++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LauncherLifecycleCommands.java @@ -384,21 +384,9 @@ public class LauncherLifecycleCommands extends AbstractCommandsSupport { new File(locatorLauncher.getWorkingDirectory()))), null); + locatorState = locatorStatus(workingDirectory, memberName); do { - try { - final int exitValue = locatorProcess.exitValue(); - - stderrReader.join(PROCESS_STREAM_READER_JOIN_TIMEOUT_MILLIS); // was Long.MAX_VALUE - - // Gfsh.println(message); - - return ResultBuilder.createShellClientErrorResult( - String.format(CliStrings.START_LOCATOR__PROCESS_TERMINATED_ABNORMALLY_ERROR_MESSAGE, - exitValue, locatorLauncher.getWorkingDirectory(), message.toString())); - } catch (IllegalThreadStateException ignore) { - // the IllegalThreadStateException is expected; it means the Locator's process has not - // terminated, - // and basically should not + if (locatorProcess.isAlive()) { Gfsh.print("."); synchronized (this) { @@ -410,12 +398,19 @@ public class LauncherLifecycleCommands extends AbstractCommandsSupport { String currentLocatorStatusMessage = locatorState.getStatusMessage(); if (isStartingOrNotResponding(locatorState.getStatus()) - && !(StringUtils.isBlank(currentLocatorStatusMessage) || currentLocatorStatusMessage - .equalsIgnoreCase(previousLocatorStatusMessage))) { + && !(StringUtils.isBlank(currentLocatorStatusMessage) + || currentLocatorStatusMessage.equalsIgnoreCase(previousLocatorStatusMessage) + || currentLocatorStatusMessage.trim().toLowerCase().equals("null"))) { Gfsh.println(); Gfsh.println(currentLocatorStatusMessage); previousLocatorStatusMessage = currentLocatorStatusMessage; } + } else { + final int exitValue = locatorProcess.exitValue(); + + return ResultBuilder.createShellClientErrorResult( + String.format(CliStrings.START_LOCATOR__PROCESS_TERMINATED_ABNORMALLY_ERROR_MESSAGE, + exitValue, locatorLauncher.getWorkingDirectory(), message.toString())); } } while (!(registeredLocatorSignalListener && locatorSignalListener.isSignaled()) && isStartingOrNotResponding(locatorState.getStatus())); @@ -1646,21 +1641,9 @@ public class LauncherLifecycleCommands extends AbstractCommandsSupport { new File(serverLauncher.getWorkingDirectory()))), null); + serverState = serverStatus(workingDirectory, memberName); do { - try { - final int exitValue = serverProcess.exitValue(); - - stderrReader.join(PROCESS_STREAM_READER_JOIN_TIMEOUT_MILLIS); // was Long.MAX_VALUE - - // Gfsh.println(message); - - return ResultBuilder.createShellClientErrorResult( - String.format(CliStrings.START_SERVER__PROCESS_TERMINATED_ABNORMALLY_ERROR_MESSAGE, - exitValue, serverLauncher.getWorkingDirectory(), message.toString())); - } catch (IllegalThreadStateException ignore) { - // the IllegalThreadStateException is expected; it means the Server's process has not - // terminated, - // and should not + if (serverProcess.isAlive()) { Gfsh.print("."); synchronized (this) { @@ -1673,11 +1656,19 @@ public class LauncherLifecycleCommands extends AbstractCommandsSupport { if (isStartingOrNotResponding(serverState.getStatus()) && !(StringUtils.isBlank(currentServerStatusMessage) - || currentServerStatusMessage.equalsIgnoreCase(previousServerStatusMessage))) { + || currentServerStatusMessage.equalsIgnoreCase(previousServerStatusMessage) + || currentServerStatusMessage.trim().toLowerCase().equals("null"))) { Gfsh.println(); Gfsh.println(currentServerStatusMessage); previousServerStatusMessage = currentServerStatusMessage; } + } else { + final int exitValue = serverProcess.exitValue(); + + return ResultBuilder.createShellClientErrorResult( + String.format(CliStrings.START_SERVER__PROCESS_TERMINATED_ABNORMALLY_ERROR_MESSAGE, + exitValue, serverLauncher.getWorkingDirectory(), message.toString())); + } } while (!(registeredServerSignalListener && serverSignalListener.isSignaled()) && isStartingOrNotResponding(serverState.getStatus()));