sean-cc / jain-slee

Automatically exported from code.google.com/p/jain-slee
0 stars 0 forks source link

Client transactions not removed on Dialog.delete(). #103

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Reproduction:
------------
- Have an Sbb establish a dialog using SIP-RA 2.7.0.Final
- Have Sbb send a BYE request on that dialog.
- Have user agent not respond to the BYE.
- Have Sbb end itself (remove()) and all activities, including a Dialog.delete()
- Observe the exception after the client transaction timeout period (32 
seconds).

At that point, no one is interested in the result anymore, the event should be 
quietly ignored.
Instead, the below exception is thrown.

Solution: the transaction should be removed when the dialog is deleted or the 
timeout should be ignored.

Exception:
---------
30.04 15:28:36 ERROR [SipResourceAdaptor] Failed to fire event
java.lang.NullPointerException
        at org.mobicents.slee.resource.sip11.SipResourceAdaptor.processTimeout(SipResourceAdaptor.java:1035)
        at gov.nist.javax.sip.EventScanner.deliverEvent(EventScanner.java:379)
        at gov.nist.javax.sip.SipProviderImpl.handleEvent(SipProviderImpl.java:183)
        at gov.nist.javax.sip.SipProviderImpl.transactionErrorEvent(SipProviderImpl.java:956)
        at gov.nist.javax.sip.stack.SIPTransaction.raiseErrorEvent(SIPTransaction.java:993)
        at gov.nist.javax.sip.stack.SIPClientTransaction.fireTimeoutTimer(SIPClientTransaction.java:1168)
        at gov.nist.javax.sip.stack.SIPTransaction.fireTimer(SIPTransaction.java:722)
        at gov.nist.javax.sip.stack.SIPClientTransaction$TransactionTimer.runTask(SIPClientTransaction.java:265)
        at gov.nist.javax.sip.stack.timers.DefaultSipTimer$DefaultTimerTask.run(DefaultSipTimer.java:63)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)

Original issue reported on code.google.com by tom.uijl...@gmail.com on 5 May 2014 at 7:33

GoogleCodeExporter commented 9 years ago
Tom, my SipResourceAdaptor.java:1035 is pointing to something else, what's the 
SLOC in current master where this is happening? 

Original comment by EMMart...@gmail.com on 9 Jul 2014 at 3:29

GoogleCodeExporter commented 9 years ago
Apologies, that source included some other patches.

It was drawn from the original 2.7.x version, svn r22387.

So in the master, that would be line SipResourceAdaptor.java:1010

Original comment by tom.uijl...@gmail.com on 21 Jul 2014 at 1:05

GoogleCodeExporter commented 9 years ago
This issue was closed by revision 1cb4d7cdd5e5.

Original comment by EMMart...@gmail.com on 23 Jul 2014 at 3:09