[Serdev] Re: [Devel] tm bug in t_hooks.c

Bogdan-Andrei Iancu bogdan at voice-system.ro
Wed Dec 7 15:56:30 CET 2005


Hi Federico,

I'm afraid you have a script error - you called twice some functions 
which create transactions...The error is generate most probably by 
t_relay() which found the transaction already created in the script 
(maybe via t_newtran).

To be able to help, please send the script (privately, if necessary) to 
take a look.

regards,
bogdan

Federico Giannici wrote:

> Bogdan-Andrei Iancu wrote:
>
>> Hi Frederico,
>>
>> that's good..one more down....
>
>
> Well.... the AVPs are no more disappearing, but I still have some 
> problem with the reinvites...
>
> It seems that uac_replace_from() creates a transaction when an INVITE 
> retrasmission is received. Infact in that case the following errors 
> are logged for the retrasmitted INVITEs:
>
> Dec  5 18:49:25 eowyn OpenSER[5654]: ERROR: t_newtran: transaction 
> already in process 0x502a56f8
> Dec  5 18:49:25 eowyn OpenSER[5654]: ERROR: sl_reply_error used: I'm 
> terribly sorry, server error occurred (1/SL)
>
> This is generated by this standard code:
>
> if ( !t_relay() ) {
>     sl_reply_error();
> }
>
> I thought that I could find the retrasmissions (with the 
> t_lookup_request() function) and use the t_forward_nonack_uri() 
> function in that case, but I got the following error:
>
> Dec  5 18:47:29 eowyn OpenSER[26647]: ERROR:tm:t_forward_nonack: no 
> branch for forwarding
>
> Obviously, I have not enought undestanding of TM functions and 
> transactions in general.
>
> So, the question is: can anybody post a correct fragment of script 
> code that relay a message, correctly handling retrasmissions?
>
> Otherwise, could I simply discard retrasmissions (with a simple exit)?
> And how I can recognize retrasmissions? Is t_lookup_request() the 
> correct function for a test?
>
>
> Thanks.
>
>
>> Federico Giannici wrote:
>>
>>> Bogdan-Andrei Iancu wrote:
>>>
>>>> Hi Cesc,
>>>>
>>>> right!! as the transaction list is set all the time (disregarding 
>>>> the presence of callbacks), it should be also unset all the time....
>>>
>>>
>>>
>>>
>>> This solves the bug of the AVPs disappearing with retrasmitted 
>>> INVITES too!!!
>>>
>>> Bogdan, now you can remove that bug from the ones to search for...
>>>
>>> Thank you Cesc.
>>
>
>




More information about the Devel mailing list