Skip to content

Commit

Permalink
fixed crash with badly signed packages and added redis ping
Browse files Browse the repository at this point in the history
  • Loading branch information
Koed00 committed Jun 28, 2015
1 parent 8dfbddb commit dffb85c
Showing 1 changed file with 17 additions and 12 deletions.
29 changes: 17 additions & 12 deletions django_q/core.py
Expand Up @@ -55,6 +55,11 @@

class Cluster(object):
def __init__(self, list_key=Q_LIST):
try:
redis_client.ping()
except Exception as e:
logger.exception(e)
return
self.sentinel = None
self.stop_event = None
self.start_event = None
Expand Down Expand Up @@ -297,19 +302,19 @@ def worker(task_queue, done_queue):
try:
task = SignedPackage.loads(pack)
except (TypeError, signing.BadSignature) as e:
result = (e, False)
logger.error(e)
continue
# Get the function from the task
if not result:
logger.info('{} processing [{}]'.format(name, task['name']))
f = task['func']
# if it's not an instance try to get it from the string
if not callable(task['func']):
try:
module, func = f.rsplit('.', 1)
m = importlib.import_module(module)
f = getattr(m, func)
except (ValueError, ImportError, AttributeError) as e:
result = (e, False)
logger.info('{} processing [{}]'.format(name, task['name']))
f = task['func']
# if it's not an instance try to get it from the string
if not callable(task['func']):
try:
module, func = f.rsplit('.', 1)
m = importlib.import_module(module)
f = getattr(m, func)
except (ValueError, ImportError, AttributeError) as e:
result = (e, False)
# We're still going
if not result:
# execute the payload
Expand Down

0 comments on commit dffb85c

Please sign in to comment.