<div dir="ltr">Hi Bogdan,<div><br></div><div>Thanks for the clarification regarding the memory and the ds_list command.</div><div> </div><div>From what I see in the opensipsctl source, the 'opensipsctl dispatcher rmgw' command also runs a 'ds_reload' after running the database query to remove the entry. Hence in my above sequence of operations, the primary storage should have synced with the secondary storage before I ran 'fifo ds_list' and should not have expected data in the ds_list output -</div><div><br></div><div><div style="font-size:12.8px"><div>./opensipsctl dispatcher show</div><div>dispatcher gateways</div><div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div><div>| id | setid | destination | socket | flags | weight | attrs | description |</div><div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div><div>| 5 | 40 | sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> | NULL | 0 | 1 | | test1 |</div><div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div><div><br></div><div> ./opensipsctl dispatcher rmgw 5 <<<<------ ds_reload here</div><div> ./opensipsctl fifo ds_list <<<----- should show synced output ?<br></div><div>SET_NO:: 1</div><div>SET:: 40</div><div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> flag=A</div><div> ./opensipsctl dispatcher show</div><div>dispatcher gateways</div><div><br></div><div>I tried the above by running 'fifo ds_reload' explicitly after 'dispatcher rmgw' as well. However I did not see a difference in the result. Can you please help in understanding the issue?</div><div><br></div><div>Thanks,</div><div>Gunjan</div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jan 14, 2016 at 1:39 AM, Bogdan-Andrei Iancu <span dir="ltr"><<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<tt>Hi Gunjan,<br>
<br>
In dispatcher there are 2 storages:<br>
- primary storage which is in memory<br>
- secondary storage (read only at startup or reload) which is
the DB<br>
<br>
First is about synchronizing the 2 storages (from secondary to
primary via a ds_reload command). AFter that is about which
storage you are querying for data. Like the "opensipsctl fifo
ds_list" (via MI command) gets data from memory cache while the
"opensipsctl dispatcher show" simply dumps db content.<br>
<br>
Regards,<br>
</tt>
<pre cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.com</a></pre><div><div class="h5">
<div>On 14.01.2016 03:44, Gunjan Korlekar
wrote:<br>
</div>
</div></div><blockquote type="cite"><div><div class="h5">
<div dir="ltr"><span style="font-size:12.8px">Hello,</span>
<div style="font-size:12.8px"><br>
</div>
<div style="font-size:12.8px">I am observing some unusual
behavior of the ds_list command when adding and removing
gateways in the dispatcher table for opensips 1.8</div>
<div style="font-size:12.8px"><br>
</div>
<div style="font-size:12.8px">I am running the following
sequence of commands -</div>
<div style="font-size:12.8px"><br>
</div>
<div style="font-size:12.8px">
<div>./opensipsctl dispatcher addgw 40 sip:<a href="http://2.2.2.4:5060/" target="_blank">2.2.2.4:5060</a> 0 'test1'</div>
<div> ./opensipsctl dispatcher addgw 40 sip:<a href="http://2.2.2.5:5060/" target="_blank">2.2.2.5:5060</a> 0 'test1'</div>
<div> ./opensipsctl dispatcher addgw 40 sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> 0 'test1'</div>
<div><br>
</div>
<div>When I view the dispatcher list using ds_list I see-</div>
<div> ./opensipsctl fifo ds_list</div>
<div>
<div>SET_NO:: 1</div>
<div>SET:: 40</div>
<div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.4:5060/" target="_blank">2.2.2.4:5060</a> flag=A</div>
<div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.5:5060/" target="_blank">2.2.2.5:5060</a> flag=A</div>
<div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> flag=A</div>
</div>
<div>and the ./opensipsctl dispatcher show output is as
follows -</div>
<div>
<div>dispatcher gateways</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div>| id | setid | destination | socket | flags |
weight | attrs | description |</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div>| 3 | 40 | sip:<a href="http://2.2.2.4:5060/" target="_blank">2.2.2.4:5060</a> |
NULL | 0 | 1 | | test1 |</div>
<div>| 4 | 40 | sip:<a href="http://2.2.2.5:5060/" target="_blank">2.2.2.5:5060</a> |
NULL | 0 | 1 | | test1 |</div>
<div>| 5 | 40 | sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> |
NULL | 0 | 1 | | test1 |</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
</div>
<div><br>
</div>
<div>However when I remove the 3 gateways one after another
using the ./opensipsctl dispatcher rmgw command. I see that
the gateway that was removed last can still be seen in the
ds_list command even though 'dispatcher show' does not show
any gateways present. Here is the sequence of commands I am
executing-</div>
<div><br>
</div>
<div>
<div> ./opensipsctl dispatcher rmgw 3</div>
<div>./opensipsctl fifo ds_list<br>
</div>
<div>SET_NO:: 1</div>
<div>SET:: 40</div>
<div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.5:5060/" target="_blank">2.2.2.5:5060</a> flag=A</div>
<div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> flag=A</div>
<div> ./opensipsctl dispatcher show</div>
<div>dispatcher gateways</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div>| id | setid | destination | socket | flags |
weight | attrs | description |</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div>| 4 | 40 | sip:<a href="http://2.2.2.5:5060/" target="_blank">2.2.2.5:5060</a> |
NULL | 0 | 1 | | test1 |</div>
<div>| 5 | 40 | sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> |
NULL | 0 | 1 | | test1 |</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div><br>
</div>
<div> ./opensipsctl dispatcher rmgw 4</div>
<div> ./opensipsctl fifo ds_list<br>
</div>
<div>SET_NO:: 1</div>
<div>SET:: 40</div>
<div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> flag=A</div>
<div> ./opensipsctl dispatcher show</div>
<div>dispatcher gateways</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div>| id | setid | destination | socket | flags |
weight | attrs | description |</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div>| 5 | 40 | sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> |
NULL | 0 | 1 | | test1 |</div>
<div>+----+-------+------------------+--------+-------+--------+-------+-------------+</div>
<div><br>
</div>
<div> ./opensipsctl dispatcher rmgw 5</div>
<div> ./opensipsctl fifo ds_list<br>
</div>
<div>SET_NO:: 1</div>
<div>SET:: 40</div>
<div><span style="white-space:pre-wrap">        </span>URI:: sip:<a href="http://2.2.2.6:5060/" target="_blank">2.2.2.6:5060</a> flag=A</div>
<div> ./opensipsctl dispatcher show</div>
<div>dispatcher gateways</div>
</div>
<div><br>
</div>
<div><br>
</div>
<div>Can you please help in understanding this behavior? Is
this expected behavior? Is there something I am missing that
needs to be done to correct this?</div>
<div>
<div><img src="https://ssl.gstatic.com/ui/v1/icons/mail/images/cleardot.gif"></div>
</div>
</div>
<div><br>
</div>
-- <br>
<div>
<div dir="ltr">Thanks,
<div>Gunjan</div>
</div>
</div>
</div>
<br>
<fieldset></fieldset>
<br>
</div></div><pre>_______________________________________________
Users mailing list
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
</blockquote>
<br>
</div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Thanks,<div>Gunjan</div></div></div>
</div>