projects
/
metaproxy-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9ec9630
)
Use yaz_daemon_stop for graceful stop
author
Adam Dickmeiss
<adam@indexdata.dk>
Wed, 9 May 2012 10:23:47 +0000
(12:23 +0200)
committer
Adam Dickmeiss
<adam@indexdata.dk>
Wed, 9 May 2012 10:23:47 +0000
(12:23 +0200)
src/metaproxy_prog.cpp
patch
|
blob
|
history
diff --git
a/src/metaproxy_prog.cpp
b/src/metaproxy_prog.cpp
index
02f197f
..
6ecc5f0
100644
(file)
--- a/
src/metaproxy_prog.cpp
+++ b/
src/metaproxy_prog.cpp
@@
-54,6
+54,7
@@
static void sig_usr1_handler(int s)
{
yaz_log(YLOG_LOG, "metaproxy received SIGUSR1");
routerp->stop();
{
yaz_log(YLOG_LOG, "metaproxy received SIGUSR1");
routerp->stop();
+ yaz_daemon_stop();
}
static void sig_term_handler(int s)
}
static void sig_term_handler(int s)
@@
-69,7
+70,7
@@
static void work_common(void *data)
{
#if HAVE_UNISTD_H
process_group = getpgid(0); // save process group ID
{
#if HAVE_UNISTD_H
process_group = getpgid(0); // save process group ID
-
+
signal(SIGTERM, sig_term_handler);
signal(SIGUSR1, sig_usr1_handler);
#endif
signal(SIGTERM, sig_term_handler);
signal(SIGUSR1, sig_usr1_handler);
#endif
@@
-78,9
+79,7
@@
static void work_common(void *data)
mp::Package pack;
pack.router(*routerp).move();
mp::Package pack;
pack.router(*routerp).move();
- /* this only exits if graceful stop is received (sig_usr1_handler) */
- yaz_log(YLOG_LOG, "metaproxy stop");
- kill(-process_group, SIGTERM); /* kill all children processes as well */
+ yaz_log(YLOG_LOG, "metaproxy stop"); /* only for graceful stop */
_exit(0);
}
_exit(0);
}