Change the append build log method to execute the two calls via one pipelined connection
Should reduce the amount of packets used by the build manager Reference: https://github.com/andymccurdy/redis-py#pipelines
This commit is contained in:
parent
96173485f8
commit
1b8820f2e7
1 changed files with 5 additions and 2 deletions
|
@ -34,8 +34,11 @@ class RedisBuildLogs(object):
|
|||
Appends the serialized form of log_obj to the end of the log entry list
|
||||
and returns the new length of the list.
|
||||
"""
|
||||
self._redis.expire(self._logs_key(build_id), SEVEN_DAYS)
|
||||
return self._redis.rpush(self._logs_key(build_id), json.dumps(log_obj))
|
||||
pipeline = self._redis.pipeline(transaction=False)
|
||||
pipeline.expire(self._logs_key(build_id), SEVEN_DAYS)
|
||||
pipeline.rpush(self._logs_key(build_id), json.dumps(log_obj))
|
||||
result = pipeline.execute()
|
||||
return result[1]
|
||||
|
||||
def append_log_message(self, build_id, log_message, log_type=None, log_data=None):
|
||||
"""
|
||||
|
|
Reference in a new issue