< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

RE: [reSIProcate] Please help - Register is Aborting.


I've checked in an update with some transaction fixes that may help...but
this sounds odd.  If DUM is retransmitting the registration, you must have
your registration time set < 32 seconds, which is a bad idea w/ services
like FWD.  This could cause DUM to make a new registration while the stack
is still retransmitting the old registration.

Could you try it again after updating?

Derek

-----Original Message-----
From: resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx
[mailto:resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx]On Behalf Of Brian
D'Souza
Sent: Thursday, July 08, 2004 2:36 PM
To: resiprocate-devel
Subject: [reSIProcate] Please help - Register is Aborting.


Hello Resiprocate/DUM Group,

I really need your help figuring this one out. I'm not sure what is
going on but here is the basic scenario.

Set up a DUM based program to Register with a server - let the program
run.

It seems that the program always crashes with the following message:

ReallyBasic: TransactionState.cxx:1407: void
resip::TransactionState::sendToWire(resip::Message*, bool): Assertion
`mTarget.getType() != UNKNOWN_TRANSPORT' failed.
Aborted

I have included a portion of the log messages generated and have
included them at the bottom of this email.

The problem seems to start after the DialogUsageManager sends REGISTER
message #34 (i.e. a Register message whose CSeq number is 34) to the
transaction layer. Before the transaction layer can send it (Register
message #34) out a timer goes off and the DialogUsageManager sends
REGISTER message #35 to the transaction layer. Since, the transaction id
for #34 and #35 are the same, the TransactionState class matches
REGISTER #35 to the transaction for Register #34. However, the DNS
lookup for REGISTER #34 has not been completed and the mTarget tuple in
the TransactionState class is invalid. Thus, when the TransactionState
class tries to send out REGISTER message #35 the application aborts.

I don't know if that makes sense - please let me know if you require
further information.

Any feedback would be greatly appreciated,

Thanks.

Brian.


===============================================================
LOG MESSAGES

Here is where REGISTER message #34 is being processed by DUM:

INFO | 20040708-142851.991 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:DUM | 17066 | 3209616304 | DialogUsageManager.cxx:330 | BrianSEND:
SipReq:  REGISTER fwd.pulver.com tid=937639856 cseq=REGISTER / 34
from(tu)
DEBUG | 20040708-142851.991 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:DUM | 17066 | 3209616304 | DialogUsageManager.cxx:338 | BrianUsing
outbound proxy
DEBUG | 20040708-142851.991 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TimerQueue.cxx:68 | Adding
application timer: DumTimeout: 1 : 38,22,-1
STACK | 20040708-142851.992 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TransactionState.cxx:155 | No
matching transaction for SipReq:  REGISTER fwd.pulver.com tid=937639856
cseq=REGISTER / 34 from(tu)
STACK | 20040708-142851.992 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TransactionState.cxx:37 |
Creating new TransactionState: tid=937639856 [ ClientNonInvite/Trying
reliable target=[ V4 0.0.0.0:0 UNKNOWN_TRANSPORT connectionId=0 ]]
STACK | 20040708-142851.992 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TransactionState.cxx:361 |
TransactionState::processClientNonInvite: SipReq:  REGISTER
fwd.pulver.com tid=937639856 cseq=REGISTER / 34 from(tu)
DEBUG | 20040708-142851.992 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TimerQueue.cxx:59 | Adding
timer: Timer F tid=937639856 ms=32000
STACK | 20040708-142851.992 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TransactionState.cxx:1394 |
sendToWire with no dns result: tid=937639856 [ ClientNonInvite/Trying
reliable target=[ V4 0.0.0.0:0 UNKNOWN_TRANSPORT connectionId=0 ]]
DEBUG | 20040708-142851.992 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:DNS | 17066 | 3209616304 | DnsResult.cxx:116 | DnsResult::lookup
sip:fwdnat.pulver.com:5082
DEBUG | 20040708-142851.992 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:DNS | 17066 | 3209616304 | DnsResult.cxx:224 | Doing Host (A)
lookup: fwdnat.pulver.com

Before the DNS lookup is completed DUM begins to process REGISTER
message #35 : (the mTarget tuple is invalid at this point)

INFO | 20040708-142852.303 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:DUM | 17066 | 3209616304 | DialogUsageManager.cxx:330 | BrianSEND:
SipReq:  REGISTER fwd.pulver.com tid=937639856 cseq=REGISTER / 35
from(tu)
DEBUG | 20040708-142852.303 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:DUM | 17066 | 3209616304 | DialogUsageManager.cxx:338 | BrianUsing
outbound proxy
DEBUG | 20040708-142852.303 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TimerQueue.cxx:68 | Adding
application timer: DumTimeout: 1 : 38,32,-1
STACK | 20040708-142852.304 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TransactionState.cxx:120 |
Found matching transaction for SipReq:  REGISTER fwd.pulver.com
tid=937639856 cseq=REGISTER / 35 from(tu) -> tid=937639856 [
ClientNonInvite/Trying reliable target=[ V4 0.0.0.0:0 UNKNOWN_TRANSPORT
connectionId=0 ]]
STACK | 20040708-142852.304 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TransactionState.cxx:361 |
TransactionState::processClientNonInvite: SipReq:  REGISTER
fwd.pulver.com tid=937639856 cseq=REGISTER / 35 from(tu)
DEBUG | 20040708-142852.304 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TimerQueue.cxx:59 | Adding
timer: Timer F tid=937639856 ms=32000
STACK | 20040708-142852.304 | brian.i.aksysnetworks.com | ReallyBasic |
RESIP:TRANSACTION | 17066 | 3209616304 | TransactionState.cxx:1409 |
BBB: mTagert is: [ V4 0.0.0.0:0 UNKNOWN_TRANSPORT connectionId=0 ]

The program aborts after this with the above message.


_______________________________________________
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxxxxxx
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel