Verified Commit acc7da35 authored by Baptiste Beauplat's avatar Baptiste Beauplat
Browse files

Add a default timeout for socket operation to the importer of 30s (Closes #94)

parent 521196ac
...@@ -48,6 +48,7 @@ import pylons ...@@ -48,6 +48,7 @@ import pylons
import optparse import optparse
import signal import signal
import datetime import datetime
from socket import setdefaulttimeout
from paste.deploy import appconfig from paste.deploy import appconfig
from debexpo.config.environment import load_environment from debexpo.config.environment import load_environment
...@@ -75,6 +76,9 @@ class Worker(object): ...@@ -75,6 +76,9 @@ class Worker(object):
self.can_continue = True self.can_continue = True
signal.signal(signal.SIGTERM, self._on_sig_term) signal.signal(signal.SIGTERM, self._on_sig_term)
# Set default socket timeout to 30s to avoid hanging indefinitely
setdefaulttimeout(30)
def _on_sig_term(self, sig, frame): def _on_sig_term(self, sig, frame):
log.info("Received SIGTERM, shutting down worker after current run.") log.info("Received SIGTERM, shutting down worker after current run.")
self._remove_pid() self._remove_pid()
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment