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