THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#424 - zombie dialogs in state 5
User who did this - Daniel-Constantin Mierla (miconda)
----------
I just pushed a different patch, where the modules makes a check to see if the transaction is created for BYE. If not, it releases the dialog.
No time to test it yet, hopefully you can give it a try quicker and report.
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=424#comment1627
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#424 - zombie dialogs in state 5
User who did this - Ovidiu Sas (osas)
----------
We have two scenarios here:
1. a request retransmission for a transaction that is already created (and this is working fine now);
2. a request re-transmission for which a transaction hasn't been created yet (and this is the troubled case).
In the second case, the callbacks set by the initial request are lost (or at least this was my interpretation by looking at the logs). The second request retransmission seems to invalidate the tm callbacks that would normally be set by the initial request.
In most of the cases there's no need to manually create a transaction (t_relay does that automatically) so there will be situation when this will happen.
For this situation, either we fix this case properly or we add some logs with hints about the need to manually create the transaction to avoid loosing the tm callbacks.
I hope that this explains better what I was trying to say in my previous post :)
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=424#comment1626
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#424 - zombie dialogs in state 5
User who did this - Daniel-Constantin Mierla (miconda)
----------
What do you mean by: "If we want to just enforce the workaround (pre-create the transaction) it would be helpful to somehow notify in the logs that callbacks registration will be lost." ? Specific to this case or in general?
This situation could be seen also as the common case of any retransmission coming fast enough that previous request doesn't get to a transaction. Normally, same processing is happening for both requests, the second will be dropped by tm at relay time. In such scenarios all should go fine, because both request should have same set of callbacks set independently, no matter which one gets through first to create the transaction.
So here is more a dialog problem that skips processing the second bye internally because of no change to dlg state.
There can be added a log message to print when the retransmission is detected that the process has callbacks in the local list, which will be no longer linked to transaction. But that could fill the log files, with logs for each late-detected retransmission.
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=424#comment1625
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#424 - zombie dialogs in state 5
User who did this - Ovidiu Sas (osas)
----------
As I said in my previous post, if the transaction is created right after the BYE is received (using t_newtran()), then it works ok.
So yes, the workaround is to pre-create the transaction before doing any blocking operations.
The issue here is that the tm callbacks are lost when the transaction is not pre-created. And this is an issue that will affect all modules that are using tm callbacks. There are no ERROR logs to show that callbacks have been lost and an admin will have a hard time figuring out what's going on when weird things are happening. If we want to just enforce the workaraound (pre-create the transaction) it would be helpful to somehow notify in the logs that callbacks registration will be lost.
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=424#comment1624
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.
THIS IS AN AUTOMATED MESSAGE, DO NOT REPLY.
The following task has a new comment added:
FS#424 - zombie dialogs in state 5
User who did this - Daniel-Constantin Mierla (miconda)
----------
I think one safe solution is to create the transaction if not created for BYE.
Looking up to see if there is a transaction after executing the event route could find one in a too late state to get appropriate callbacks still execution (e.g, if execution of event route takes too long, transaction can be in wait-for-delete state).
Alternative, run the dialog code for BYE under dialog lock, so a later BYE cannot overtake a previous one. Or, if a BYE comes in a state 5, drop it from inside dialog module...
----------
More information can be found at the following URL:
http://sip-router.org/tracker/index.php?do=details&task_id=424#comment1623
You are receiving this message because you have requested it from the Flyspray bugtracking system. If you did not expect this message or don't want to receive mails in future, you can change your notification settings at the URL shown above.