kill backend with SIGABRT when it won't send PONG before pingTimeout
This commit is contained in:
parent
0d9c0387a4
commit
fcf2821bd2
1 changed files with 11 additions and 0 deletions
|
@ -952,6 +952,17 @@ void NetworkPluginServer::pingTimeout() {
|
|||
else {
|
||||
LOG4CXX_INFO(logger, "Disconnecting backend " << (*it) << " (ID=" << (*it)->id << "). PING response not received.");
|
||||
toRemove.push_back(*it);
|
||||
|
||||
#ifndef WIN32
|
||||
// generate coredump for this backend to find out why it wasn't able to respond to PING
|
||||
std::string pid = (*it)->id;
|
||||
if (!pid.empty()) {
|
||||
try {
|
||||
kill(boost::lexical_cast<int>(pid), SIGABRT);
|
||||
}
|
||||
catch (...) { }
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
if ((*it)->users.size() == 0) {
|
||||
|
|
Loading…
Add table
Reference in a new issue