[OpenSIPS-Users] Db_mode=3(sql only) in USRLOC module in opensips_3.1

Donat Zenichev donat.zenichev at gmail.com
Mon Dec 14 11:41:52 EST 2020


Good day Saurabh, could you refer to the RFC and the particular row in
that, that talks about a backend database and time in which the row should
be deleted from that?
I just wonder if I missed this somewhere. I haven't ever seen a
specification for databases backend in RFCs related to the SIP protocol.
Would be a good thing for me to learn something new! :)

I just want to mention, and focus you on the fact, that you might need to
take a look at this parameter:
https://opensips.org/html/docs/modules/3.0.x/usrloc.html#param_timer_interval

As this plays not the last role when working in sql-only mode.
Did you read something about that?

One more time, a quotation:
1. "Number of seconds between two timer runs. During each run, the module
will update/delete dirty/expired contacts from memory and/or mirror these
operations to the database, if configured to do so."
2. "sql-only - DB-Only scheme. No memory cache is kept, all operations
being directly performed with the database. The timer deletes all expired
contacts from database - cleans after clients that didn't un-register or
re-register."

This is how it works.


On Mon, Dec 14, 2020 at 12:26 PM Saurabh Chopra <saurabhc at 3clogic.com>
wrote:

> Hi Donat/Opensips Team,
>
> Apologies for late response, but ideally the entry should be deleted after
> un-registration is sent otherwise it will violate the RFC rule.
> Also, this SQL Only Mode is perfectly working with opensips 2.2 and 3.0
> versions with the same configuration. Could you guys try to replicate this
> Or confirm if I am missing anything in the configuration side.
>
>
> Best Regards
> Saurabh Chopra
> +918861979979
>
>
> On Fri, Dec 11, 2020 at 2:22 PM Donat Zenichev <donat.zenichev at gmail.com>
> wrote:
>
>> I just want to follow up with the thing that, using the sql-only mode,
>> expired location records might not be deleted right away.
>> I just remembered all of the sudden, that the timer interval controls
>> data clearing/updating when using sql-only mode.
>>
>> Then you might also want to play with your timer interval value. How huge
>> is that now?
>>
>> https://opensips.org/html/docs/modules/3.0.x/usrloc.html#param_timer_interval
>>
>> This one is responsible for clearing out expired contacts from the user
>> location table.
>> Here is a quotation from the "sql-only" mod description:
>> "The timer deletes all expired contacts from database - cleans after
>> clients that didn't un-register or re-register."
>>
>> On Fri, Dec 11, 2020 at 9:22 AM Donat Zenichev <donat.zenichev at gmail.com>
>> wrote:
>>
>>> Good morning Saurabh,
>>> that sounds a bit odd, as the sql only mode supposes that usrloc.so
>>> updates the backend sql right away.
>>>
>>> Do you have any warnings occurring in the OpenSIPS log?
>>> There might be a case for an inability of OpenSIPS to reach the sql
>>> server at the moment of de-registration.
>>> See if there are any re-connections to the database.
>>>
>>> And also did you try to gather opensips logs with a debug level?
>>> Try to see which log rows both "db_mysql.so" (if you are using mysql as
>>> a backend db) and "usrloc.so" are throwing out into the log, when you send
>>> a de-registration.
>>>
>>> Otherwise, you might also try to use either
>>> "single-instance-sql-write-through" or "single-instance-sql-write-back",
>>> which perhaps can better fit your demands.
>>>
>>>
>>> On Fri, Dec 11, 2020 at 9:00 AM Saurabh Chopra <saurabhc at 3clogic.com>
>>> wrote:
>>>
>>>> Hi All,
>>>>
>>>> I am testing a usrloc module with db_mode=3(sql only) and a strange
>>>> thing is happening, when we send an unregistration request the user entry
>>>> is not deleting from the database . However the entry is deleted after
>>>> expiry timer.
>>>>
>>>> loadmodule "usrloc.so"
>>>> modparam("usrloc", "nat_bflag", "NAT")
>>>> modparam("usrloc", "db_mode", 3)
>>>> modparam("usrloc", "db_url", "mysql://root:xxxxg1c@localhost/opensips")
>>>>
>>>>
>>>> Does db_mode=3 used to work like this? Or I am missing something?
>>>>
>>>> Best Regards
>>>> Saurabh Chopra
>>>> +918861979979
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>
>>>
>>>
>>> --
>>>
>>> Best regards,
>>> Donat Zenichev
>>>
>>>
>>
>> --
>>
>> Best regards,
>> Donat Zenichev
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>


-- 

Best regards,
Donat Zenichev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20201214/1a5b9b2e/attachment.html>


More information about the Users mailing list