Fix bug when running worker on debug mode (#1785)

When running on debug mode, some debug logs were
using colorizers on lists, which would raise an unhandled exception
on the worker. The same happened for a debug log that was
using colors on a response from Redis (bytes).
This commit is contained in:
lowercase00 2023-02-02 00:54:09 -03:00 committed by GitHub
parent c2e6d95338
commit cd62b4cb50
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 3 deletions

View File

@ -983,13 +983,14 @@ class Queue:
if timeout is not None: # blocking variant
if timeout == 0:
raise ValueError('RQ does not support indefinite timeouts. Please pick a timeout value > 0')
logger.debug(f"Starting BLPOP operation for queues {green(queue_keys)} with timeout of {timeout}")
colored_queues = [green(queue) for queue in queue_keys]
logger.debug(f"Starting BLPOP operation for queues {colored_queues} with timeout of {timeout}")
result = connection.blpop(queue_keys, timeout)
if result is None:
logger.debug(f"BLPOP Timeout, no jobs found on queues {green(queue_keys)}")
logger.debug(f"BLPOP Timeout, no jobs found on queues {colored_queues}")
raise DequeueTimeout(timeout, queue_keys)
queue_key, job_id = result
logger.debug(f"Dequeued job {blue(job_id)} from queue {green(queue_key)}")
logger.debug(f"Dequeued job {blue(job_id.decode('utf-8'))} from queue {green(queue_key.decode('utf-8'))}")
return queue_key, job_id
else: # non-blocking variant
for queue_key in queue_keys: