Additional information. To reproduce problem is enough to enable pua and
pua_dialoginfo modules and call dialoginfo_set("A") or dialoginfo_set("B") to
all of our calls. We can reproduce it only on live traffic. At the random
moment about one time in 1-3 hours struct dlg_cell loose its pointer to callid.
In another words, callid.s == NULL. Any other data is there. Rarely is the same
problem with name.s value in struct dlg_val. It's all in random places of code
!!! I inserted checkpoints in any other functions to print callid and callid
disappears in random moment in same dialogs. Usually, it disappears just right
after creation dialog when processing initial INVITE or first/second reply
after this INVITE - 200, 486, 180, 100 !!! Just one moment we have callid and
then we have no callid there, but current process functions does not touch
callid! It rewrites by another process. My idea was also to check timer
routines in pua module. Cleanup function was not called, but dbupdate function
was ended usually 1 second ago before callid is broken. Then we have crashes
in dialog or pua_dialoginfo modules. If we disable pua & pua_dialoginfo modules
then opensips is stable. No loosing vars. Version is 1.10 latest git
(a36e379ff63acc6b7f74484e88205b831f82a9f5, Jan 15). I cannot find who rewrites
pointers in dlg_cell and dlg_val structures.
---
Reply to this email directly or view it on GitHub:
https://github.com/OpenSIPS/opensips/issues/70#issuecomment-33661694___
Devel mailing list
Devel@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/devel