<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body text="#42392c" bgcolor="#ffffff">
    <font size="+1"><font face="Cantarell">Hello Everyone,<br>
        Dispatcher in cluster causing destinations goes down
        unexpectedly.  <br>
        <b>Scenario: </b><br>
        Two nodes with last ip octet 61 and 41.<br>
        Freeswitch stats to calculate  weight.<br>
        <b>Issue:</b><br>
        61 is  set to ping all destinations and report to the 41 the
        status via cluster, the issue that 41 bring down all
        destinations into Inactive state after cluster update message
        until ds_reload issued again.<br>
        <b>Attempt to fix: </b><br>
        I tried set limit on which groups which node can ping, but seems
        like in cluster it should be relevant, because 61 should  get
        status of all groups and send to  41.<br>
        <b>Relevant Config:</b><br>
        Node 61:<br>
      </font></font><br>
    <pre style="box-sizing: border-box; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; font-size: 11.9px; margin-top: 0px; margin-bottom: 16px; overflow-wrap: normal; padding: 16px; overflow: auto; line-height: 1.45; background-color: var(--color-bg-tertiary); border-radius: 6px; color: rgb(36, 41, 46); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"><code style="box-sizing: border-box; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; font-size: 11.9px; padding: 0px; margin: 0px; background: transparent; border-radius: 6px; word-break: normal; white-space: pre; border: 0px; display: inline; overflow: visible; line-height: inherit; overflow-wrap: normal;">#### Dispatcher
loadmodule "dispatcher.so"
modparam("dispatcher", "db_url", "postgres://")
modparam("dispatcher", "table_name", "dispatcher")
modparam("dispatcher", "setid_col", "setid")
modparam("dispatcher", "priority_col", "priority")
modparam("dispatcher", "destination_col", "destination")
modparam("dispatcher", "cnt_avp", "$avp(274)")
modparam("dispatcher", "grp_avp", "$avp(275)")
modparam("dispatcher", "hash_pvar", "$avp(273)")
modparam("dispatcher", "dst_avp", "$avp(271)")
modparam("dispatcher", "sock_avp", "$avp(276)")
modparam("dispatcher", "ds_ping_from", <a class="moz-txt-link-rfc2396E" href="sip:proxy@10.30.100.61">"sip:proxy@10.30.100.61"</a>)
modparam("dispatcher", "ds_ping_method", "OPTIONS")
modparam("dispatcher", "ds_ping_interval", 45)
modparam("dispatcher", "ds_probing_mode", 1)
modparam("dispatcher", "ds_probing_threshold", 5)
modparam("dispatcher", "ds_probing_list", "2,3,4")
modparam("dispatcher", "fetch_freeswitch_stats", 1)
modparam("dispatcher", "options_reply_codes", "501,403,404,400,200")
modparam("dispatcher", "cluster_id", 1)

</code><font size="+1"><font face="Cantarell">Node 41:

</font></font><code style="box-sizing: border-box; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; font-size: 11.9px; padding: 0px; margin: 0px; background: transparent; border-radius: 6px; word-break: normal; white-space: pre; border: 0px; display: inline; overflow: visible; line-height: inherit; overflow-wrap: normal;">#### Dispatcher
loadmodule "dispatcher.so"
modparam("dispatcher", "")
modparam("dispatcher", "table_name", "dispatcher")
modparam("dispatcher", "setid_col", "setid")
modparam("dispatcher", "priority_col", "priority")
modparam("dispatcher", "destination_col", "destination")
modparam("dispatcher", "cnt_avp", "$avp(274)")
modparam("dispatcher", "grp_avp", "$avp(275)")
modparam("dispatcher", "hash_pvar", "$avp(273)")
modparam("dispatcher", "dst_avp", "$avp(271)")
modparam("dispatcher", "sock_avp", "$avp(276)")
modparam("dispatcher", "ds_ping_from", <a class="moz-txt-link-rfc2396E" href="sip:proxy@10.30.100.41">"sip:proxy@10.30.100.41"</a>)
modparam("dispatcher", "ds_ping_method", "OPTIONS")
modparam("dispatcher", "ds_ping_interval", 45)
modparam("dispatcher", "ds_probing_mode", 1)
modparam("dispatcher", "ds_probing_threshold", 5)
modparam("dispatcher", "fetch_freeswitch_stats", 1)
modparam("dispatcher", "options_reply_codes", "501,403,404,400,200")
modparam("dispatcher", "ds_probing_list", "1")
modparam("dispatcher", "cluster_id", 1)
modparam("dispatcher", "cluster_sharing_tag", "vip")</code>


<font size="+1"><font face="Cantarell">
<b>Comments:</b>
I think in cluster 41 should not do any operation or decisions regard node states and it should rely on 61 only 

<b>Log: </b>
</font></font>
<font size="+1"><font face="Cantarell"> 41 node
</font></font>[root@vprx00 ~]# grep EVENT /var/log/opensips/opensips.log
Feb  1 12:44:57 vprx00 /usr/sbin/opensips[250547]: [EVENT_ROUTE] [DISPATCHER] received group=0 ~> address=<a class="moz-txt-link-freetext" href="sip:10.30.100.57:5160">sip:10.30.100.57:5160</a> ~> status=inactive
Feb  1 12:50:54 vprx00 /usr/sbin/opensips[250545]: [EVENT_ROUTE] [DISPATCHER] received group=0 ~> address=<a class="moz-txt-link-freetext" href="sip:10.30.100.48:5160">sip:10.30.100.48:5160</a> ~> status=inactive
Feb  1 12:52:15 vprx00 /usr/sbin/opensips[250538]: [EVENT_ROUTE] [DISPATCHER] received group=0 ~> address=<a class="moz-txt-link-freetext" href="sip:10.30.100.49:5160">sip:10.30.100.49:5160</a> ~> status=inactive
</pre>
       41 node<br>
       Feb  1 14:24:49 vprx00 /usr/sbin/opensips[250540]:
    DBG:dispatcher:w_ds_select: ds_select: 1 1 1000 1<br>
       Feb  1 14:24:49 vprx00 /usr/sbin/opensips[250540]:
    DBG:dispatcher:ds_select_dst: no active destinations in set [1] !<br>
    <pre style="box-sizing: border-box; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; font-size: 11.9px; margin-top: 0px; margin-bottom: 16px; overflow-wrap: normal; padding: 16px; overflow: auto; line-height: 1.45; background-color: var(--color-bg-tertiary); border-radius: 6px; color: rgb(36, 41, 46); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"><font size="+1"><font face="Cantarell"> 
volga629.
</font></font><code style="box-sizing: border-box; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; font-size: 11.9px; padding: 0px; margin: 0px; background: transparent; border-radius: 6px; word-break: normal; white-space: pre; border: 0px; display: inline; overflow: visible; line-height: inherit; overflow-wrap: normal;"></code><code style="box-sizing: border-box; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace; font-size: 11.9px; padding: 0px; margin: 0px; background: transparent; border-radius: 6px; word-break: normal; white-space: pre; border: 0px; display: inline; overflow: visible; line-height: inherit; overflow-wrap: normal;"></code></pre>
    <font size="+1"><font face="Cantarell"><br>
         <br>
      </font></font>
  </body>
</html>