From: Ruben Kerkhof Date: Sat, 28 Nov 2015 17:37:15 +0000 (+0100) Subject: write_redis: don't return with lock held X-Git-Tag: collectd-5.6.0~564^2 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=04255470ff47f2bbdb1b6dccc8e831d6bb43930a;p=collectd.git write_redis: don't return with lock held --- diff --git a/src/write_redis.c b/src/write_redis.c index 1eb082fb..4bfcc73d 100644 --- a/src/write_redis.c +++ b/src/write_redis.c @@ -83,10 +83,11 @@ static int wr_write (const data_set_t *ds, /* {{{ */ value_size = sizeof (value); value_ptr = &value[0]; status = format_values (value_ptr, value_size, ds, vl, node->store_rates); - pthread_mutex_lock (&node->lock); if (status != 0) return (status); + pthread_mutex_lock (&node->lock); + if (node->conn == NULL) { node->conn = redisConnectWithTimeout ((char *)node->host, node->port, node->timeout);