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
(cherry picked from commit bba9625b25)
(cherry picked from commit 89fb267a2a)
mr11.5.1
Lucian Balaceanu 1 year ago committed by Richard Fuchs
parent 11e3d35d10
commit aeec87ae19

@ -3501,7 +3501,8 @@ void call_destroy(struct call *c) {
statistics_update_ip46_inc_dec(c, CMC_DECREMENT);
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);

Loading…
Cancel
Save