[OpenSIPS-Devel] Can't get 2.3 running with voiptests properly

Maxim Sobolev sobomax at sippysoft.com
Tue Aug 1 20:59:07 EDT 2017


Hi Bogdan & Co, I think I've narrowed down failure to a specific revision
in the 2.3 branch, see
https://travis-ci.org/sippy/voiptests/builds/260009545:

commit 1eb4ec0f78f43f6ff546de49bc72e513876fb86b
Author: Bogdan-Andrei Iancu <bogdan at opensips.org>
Date:   Thu Mar 9 15:37:01 2017 +0200

    Added support for dynamic branch manipulation

    New functions were added to allow remote injecting of new branches into
an ongoing transaction:
    * t_inject_branches(source, flags) - injects new branches;
    * t_wait_for_new_branches() - instruct transaction to wait more for
possible new injections.

Looking at the diff in question, the following piece of code looks
suspicious, but it might be something else from that change:

@@ -1244,7 +1301,18 @@ inline static int w_t_relay( struct sip_msg  *p_msg
, char *proxy, char *flags)

                update_cloned_msg_from_msg( t->uas.request, p_msg);

-               ret = t_forward_nonack( t, p_msg, p);
+               if (route_type==FAILURE_ROUTE) {
+                       /* If called from failure route we need reset the
branch counter to
+                        * ignore the previous set of branches (already
terminated) */
+                       ret = t_forward_nonack( t, p_msg, p, 1/*reset*/);
+               } else {
+                       /* if called from request route and the transaction
was previously
+                        * created, better lock here to avoid any
overlapping with
+                        * branch injection from other processes */
+                       LOCK_REPLIES(t);
+                       ret = t_forward_nonack( t, p_msg, p, 1/*reset*/);
+                       UNLOCK_REPLIES(t);
+               }
                if (ret<=0 ) {
                        LM_ERR("t_forward_nonack failed\n");
                        ret = t_relay_inerr2scripterr();
@@ -1262,7 +1330,8 @@ route_err:

The revisions right before that work, none after does. Hopefully it will
give you some clues. Let me know if any other info is needed.

-Max
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/devel/attachments/20170801/1b22ea9d/attachment.html>


More information about the Devel mailing list