Browse Source

MT#55283 fix calling redis_delete when call is not persisted to db

Fixes a corner case that happens when trying to delete a call created with
ng offer and no-redis-update flag and for which no ng answer was received.
In such cases, one would receive warning messages from Redis
"ERR DB index is out of range".

What happens is that on call creation redis_hosted_db defaults to -1. This
value is changed when writing to Redis, but the writing is not done for a
ng offer with no-redis-update.

Kudos go to Pawel Kuzak.

Closes #1910

Change-Id: Iad19ec8ac69b169e6352662697b17eb23e6970fb
pull/1912/head
Lucian Balaceanu 10 months ago
committed by Richard Fuchs
parent
commit
bba9625b25
1 changed files with 2 additions and 1 deletions
  1. +2
    -1
      daemon/call.c

+ 2
- 1
daemon/call.c View File

@ -4005,7 +4005,8 @@ void call_destroy(call_t *c) {
statistics_update_ip46_inc_dec(c, CMC_DECREMENT); statistics_update_ip46_inc_dec(c, CMC_DECREMENT);
statistics_update_foreignown_dec(c); statistics_update_foreignown_dec(c);
redis_delete(c, rtpe_redis_write);
if (c->redis_hosted_db >= 0)
redis_delete(c, rtpe_redis_write);
__call_iterator_remove(c); __call_iterator_remove(c);


Loading…
Cancel
Save