Repository: lens Updated Branches: refs/heads/master d1a0e0e26 -> 9b0a453de
LENS-1357 : Fix NPE in stop lens services after a failed attempt of start Project: http://git-wip-us.apache.org/repos/asf/lens/repo Commit: http://git-wip-us.apache.org/repos/asf/lens/commit/9b0a453d Tree: http://git-wip-us.apache.org/repos/asf/lens/tree/9b0a453d Diff: http://git-wip-us.apache.org/repos/asf/lens/diff/9b0a453d Branch: refs/heads/master Commit: 9b0a453de7059bf453a84f2c5945095151a6a9d7 Parents: d1a0e0e Author: Rajat Khandelwal <[email protected]> Authored: Thu Nov 3 10:44:30 2016 +0530 Committer: Amareshwari Sriramadasu <[email protected]> Committed: Thu Nov 3 10:44:30 2016 +0530 ---------------------------------------------------------------------- .../org/apache/lens/server/LensServices.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lens/blob/9b0a453d/lens-server/src/main/java/org/apache/lens/server/LensServices.java ---------------------------------------------------------------------- diff --git a/lens-server/src/main/java/org/apache/lens/server/LensServices.java b/lens-server/src/main/java/org/apache/lens/server/LensServices.java index 7ff5cbb..a3e272a 100644 --- a/lens-server/src/main/java/org/apache/lens/server/LensServices.java +++ b/lens-server/src/main/java/org/apache/lens/server/LensServices.java @@ -411,16 +411,19 @@ public class LensServices extends CompositeService implements ServiceProvider { if (isServerStatePersistenceEnabled) { try { //1. shutdown serverSnapshotScheduler gracefully by allowing already triggered task (if any) to finish - serverSnapshotScheduler.shutdown(); - try { //Wait for shutdown. Shutdown should be immediate in case no task is running at this point - while (!serverSnapshotScheduler.awaitTermination(1, TimeUnit.MINUTES)) { - log.info("Waiting for Lens-server-snapshotter to shutdown gracefully..."); + if (serverSnapshotScheduler != null) { + serverSnapshotScheduler.shutdown(); + try { //Wait for shutdown. Shutdown should be immediate in case no task is running at this point + while (!serverSnapshotScheduler.awaitTermination(1, TimeUnit.MINUTES)) { + log.info("Waiting for Lens-server-snapshotter to shutdown gracefully..."); + } + } catch (InterruptedException e) { + log.error("Lens-server-snapshotter interrupted while shutting down", e); } - } catch (InterruptedException e) { - log.error("Lens-server-snapshotter interrupted while shutting down" , e); + log.info("Lens-server-snapshotter was shutdown"); + } else { + log.info("Lens-server-snapshotter wasn't started, so no need to shutdown"); } - log.info("Lens-server-snapshotter was shutdown"); - //2. persist the latest state of all the services persistLensServiceState(); } finally {
