SIGTERM signal handler in Swift services
Hello,
I have configured container-server to create 2 worker threads during execution. The container-server is running on 0.0.0.0 and port 7001. I used below command to start service.
$> swift-init container-server start
swift 6841 1 0 01:01 ? 00:00:00 /usr/bin/python /usr/bin/
swift 6941 6841 0 01:01 ? 00:00:00 /usr/bin/python /usr/bin/
swift 6945 6841 0 01:01 ? 00:00:00 /usr/bin/python /usr/bin/
I am facing problems when I killed pid 6841 explicitly with ”kill -9 6841” command. PID 6841 is terminating but child processes 6941 and 6945 are still residing in memory. So, I am getting the below error while restarting container-server. It is not binding with 0.0.0.0:7001 again.
fstat(3, {st_mode=
lseek(3, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek)
read(3, "Traceback (most recent call last):\n", 8192) = 35
read(3, " File \"/usr/
read(3, " File \"/usr/
read(3, " sock = get_socket(conf, default_
read(3, " File \"/usr/
read(3, " bind_addr[0], bind_addr[1], bind_timeout))\n", 7772) = 47
read(3, "Exception: Could not bind to 0.0.0.0:7001 after trying for 30 seconds\n", 7725) = 70
Same behavior I observed for object-server and account-server. Does it mean that SIGTERM signal is not handled ?
Thanks,
-Anuj
Question information
- Language:
- English Edit question
- Status:
- Solved
- Assignee:
- No assignee Edit question
- Solved by:
- Anuj
- Solved:
- Last query:
- Last reply: