aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore/src/apps
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-09-05 21:04:08 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2017-09-05 21:04:08 +0200
commitcb2e7054e43ec84ea7181f67631602546f7cae33 (patch)
treede8015e7c6c9cb3aa914f7085b19db1999201045 /searchcore/src/apps
parent8ae7332f3e4297121fb9f50972ded38ef94aa5ca (diff)
WE must listen to everyone who wants to stop.
Diffstat (limited to 'searchcore/src/apps')
-rw-r--r--searchcore/src/apps/proton/proton.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/searchcore/src/apps/proton/proton.cpp b/searchcore/src/apps/proton/proton.cpp
index 7515ddc4e23..6fab53204c3 100644
--- a/searchcore/src/apps/proton/proton.cpp
+++ b/searchcore/src/apps/proton/proton.cpp
@@ -224,9 +224,9 @@ App::Main()
proton.getMetricManager().init(params.identity, proton.getThreadPool());
}
EV_STARTED("proton");
- while (!(SIG::INT.check() || SIG::TERM.check())) {
+ while (!(SIG::INT.check() || SIG::TERM.check() || (spiProton && spiProton->getNode().attemptedStopped()))) {
FastOS_Thread::Sleep(1000);
- if (spiProton.get() && spiProton->configUpdated()) {
+ if (spiProton && spiProton->configUpdated()) {
storage::ResumeGuard guard(spiProton->getNode().pause());
spiProton->updateConfig();
}
@@ -247,7 +247,7 @@ App::Main()
}
}
}
- if (spiProton.get()) {
+ if (spiProton) {
spiProton->getNode().requestShutdown("controlled shutdown");
spiProton->shutdown();
EV_STOPPING("servicelayer", "clean shutdown");