[sr-dev] [kamailio/kamailio] dialog: failover database loading behaviour in shared DB scenario, expiration of dialogs (#2080)

Joel Serrano notifications at github.com
Wed Oct 2 03:18:26 CEST 2019


Maybe this is irrelevant, but I'd like to add another scenario (not sure if you have contemplated this one @henningw): replicating dialogs exclusively via DMQ (with no database at all).

* Proxy1 creates a dialog (let's call it **dialogA**) and replicates it via DMQ to Proxy2.
* Proxy1 is restarted/crashes/something.
* Proxy1 comes back up before **dialogA** has expired.
* Proxy1 receives all dialogs from Proxy2 via DMQ (including **dialogA**).

What would happen when expiration for the **dialogA** is due?

1- Would Proxy1 send the BYE and then "tell" via DMQ to Proxy2 to remove it from its memory?  
2- What if Proxy1 never came back up in time, would Proxy2 know that **it** should take care of sending out a BYE for that expired dialog? 
3- Would both Proxy1 and Proxy2 send a BYE and then tell the other proxy via DMQ to remove it? (this would be a race-condition I believe, and one would end up logging a *non-existent dialog* on syslog?)

I know the subject of this issue clearly talks about scenarios **with** a database, so if you believe this database-less scenario shouldn't be discussed here let me know and I can create a new issue.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/2080#issuecomment-537294709
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-dev/attachments/20191001/4eadc4cc/attachment.html>


More information about the sr-dev mailing list