Browse Source

Rtpengine starts even if redis is down

Rtpengine will start with a warning message if redis is configured, but is
not up and running.
pull/220/head
smititelu 10 years ago
parent
commit
50aef804d9
2 changed files with 13 additions and 14 deletions
  1. +9
    -12
      daemon/redis.c
  2. +4
    -2
      daemon/redis.h

+ 9
- 12
daemon/redis.c View File

@ -233,24 +233,21 @@ struct redis *redis_new(const endpoint_t *ep, int db, const char *auth, enum red
r->db = db;
r->auth = auth;
r->role = role;
r->state = REDIS_STATE_DISCONNECTED;
mutex_init(&r->lock);
if (redis_connect(r, 10))
goto err;
// redis is connected
if (r->state == REDIS_STATE_DISCONNECTED) {
rlog(LOG_INFO, "Established connection to Redis %s",
if (redis_connect(r, 10)) {
rlog(LOG_WARN, "Starting with no initial connection to Redis %s !",
endpoint_print_buf(&r->endpoint));
r->state = REDIS_STATE_CONNECTED;
return r;
}
return r;
// redis is connected
rlog(LOG_INFO, "Established initial connection to Redis %s",
endpoint_print_buf(&r->endpoint));
r->state = REDIS_STATE_CONNECTED;
err:
mutex_destroy(&r->lock);
g_slice_free1(sizeof(*r), r);
return NULL;
return r;
}


+ 4
- 2
daemon/redis.h View File

@ -20,8 +20,10 @@ enum redis_role {
ANY_REDIS_ROLE = 2,
};
#define REDIS_STATE_DISCONNECTED 0
#define REDIS_STATE_CONNECTED 1
enum redis_state {
REDIS_STATE_DISCONNECTED = 0,
REDIS_STATE_CONNECTED = 1,
};
struct callmaster;
struct call;


Loading…
Cancel
Save