[reSIProcate] Leaking transactions
Robert Sparks
rjsparks at nostrum.com
Thu May 3 12:44:08 CDT 2007
The bug link in the mail pointed to below is stale. The current
version is http://bugs.sipit.net/show_bug.cgi?id=706
You'll note the bug is for a clarification - not a change in
normative behavior.
But again, the point is that
1) When you are an endpoint, it is your decision when to abandon an
INVITE client transaction - the spec _explicitly and on purpose_
does not mandate an exit from the proceeding state. In code, this
means the user of the stack has the responsibility
to terminate an INVITE transaction in that state. The stack CANNOT do
that by itself.
2) When you are a proxy, you have timer C around to help you make
that decision. You can look at the way repro uses timer C
as an example of how a TU tells the stack that its no longer willing
to leave the INVITE transaction in that state.
I do not see a bug in the resiprocate code here.
RjS
On May 3, 2007, at 11:20 AM, kaiduan xie wrote:
> Please see a very old debate on sip implementor list,
> https://lists.cs.columbia.edu/pipermail/sip-implementors/2003-
> December/005785.html
> kaiduan
>
> ----- Original Message ----
> From: Byron Campen <bcampen at estacado.net>
> To: kaiduan xie <kaiduanx at yahoo.ca>
> Cc: Greg Inglis <Greg.Inglis at TelephoneticsVIP.co.uk>; resiprocate-
> devel at list.resiprocate.org
> Sent: Thursday, May 3, 2007 9:48:46 AM
> Subject: Re: [reSIProcate] Leaking transactions
>
> Well, that isn't exactly the case. For endpoints, we tear down the
> transaction when the _user_ decides to stop pursuing it. For
> proxies, we use Timer C. There is no defined mechanism for B2BUAs,
> but I would expect that something like Timer C could be used.
>
> Best regards,
> Byron Campen
>
>> Yes, this is a bug in resiprocate, and a bug in rfc 3261. Same
>> thing happens for UAS INVITE transaction.
>>
>> kaiduan
>>
>> ----- Original Message ----
>> From: Greg Inglis <Greg.Inglis at TelephoneticsVIP.co.uk>
>> To: resiprocate-devel at list.resiprocate.org
>> Sent: Thursday, May 3, 2007 6:13:47 AM
>> Subject: [reSIProcate] Leaking transactions
>>
>> Hi there,
>>
>> I am getting a memory leak in my application when I end my UAC
>> session while the session is in a 'UAC_Early' state
>> i.e. I've got a '180 Ringing' from the remote UAS endpoint but I
>> haven't received a '200 OK' as yet.
>>
>> I'm getting the following statistics message from the stack
>> afterwards:
>>
>> TU summary: 0 TRANSPORT 0 TRANSACTION 0 CLIENTTX 1 SERVERTX 0
>> TIMERS 0
>> Transaction summary: reqi 0 reqo 6 rspi 8 rspo 0
>> Details: INVi 0/S0/F0 INVo 2/S0/F1 ACKi 0 ACKo 1 BYEi 0/S0/F0 BYEo
>> 1/S1/F0 CANi 0/S0/F0 CANo 0/S0/F0 MSGi 0/S0/F0 MSGo 0/S0/F0 OPTi 0/
>> S0/F0 OPTo 0/S0/F0 REGi 0/S0/F0 REGo 2/S1/F1 PUBi 0/S0/F0 PUBo 0/
>> S0/F0 SUBi 0/S0/F0 SUBo 0/S0/F0 NOTi 0/S0/F0 NOTo 0/S0/F0
>> Retransmissions: INVx 0 BYEx 0 CANx 0 MSGx 0 OPTx 0 REGx 0 finx 0
>> nonx 0 PUBx 0 SUBx 0 NOTx 0
>> The 'CLIENTTX 1' in the TU summary doesn't go away no matter how
>> long I wait - I assume this means a transaction has leaked somehow?
>> I am ending the session by calling ClientInviteSession::end() and
>> subsequently calling process() on the stack and DUM - is there
>> some step I am missing here?
>>
>> I'm using reSiprocate 1.1 built on VC8 SP1 and my SIP proxy is
>> asterisk.
>>
>> Any help would be appreciated
>>
>> Greg Inglis
>> Software Engineer
>>
>> Telephonetics VIP Ltd
>> "making sound
>> business sense"
>>
>> Simply dial +44 (0) 1442 242 242 and ask for me by name.
>> For Technical Support / Fault Logging please use
>> support at telephoneticsvip.co.uk
>>
>> Emails to my personal address will not be managed in my absence.
>>
>> www.telephoneticsVIP.co.uk
>>
>> Providing innovative hosted and customer premises speech
>> recognition and voice automation solutions.
>>
>> Winner of the National Business Awards (SE Region) Business
>> Innovation of the Year 2004 & 2005 and Dacorum Business Of The
>> Year Award 2003 & 2006.
>>
>> Disclaimer:
>> The disclaimer available at http://www.telephoneticsVIP.co.uk/
>> telephonetics/emaildisclaimer.jsp or by sending email to
>> <mailto:email-disclaimer at telephoneticsVIP.co.uk> applies to this
>> email.
>>
>>
>> _______________________________________________
>> resiprocate-devel mailing list
>> resiprocate-devel at list.resiprocate.org
>> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
>>
>>
>> Be smarter than spam. See how smart SpamGuard is at giving junk
>> email the boot with the All-new Yahoo! Mail
>> _______________________________________________
>> resiprocate-devel mailing list
>> resiprocate-devel at list.resiprocate.org
>> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
>
>
>
> Ask a question on any topic and get answers from real people. Go to
> Yahoo! Answers.
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel at list.resiprocate.org
> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20070503/3d6a6041/attachment.htm>
More information about the resiprocate-devel
mailing list