The record we added via RPC was first creating a new contact (and inserting into the db), this was working fine. But we found that if we cleared the database, any "updates" would fail. Adding that parameter caused the record to get inserted if an update failed (re-register)
On Mon, Jan 16, 2017 at 3:28 AM, Daniel-Constantin Mierla <miconda@gmail.com
wrote:
The record you add via rpc is creating a new contact in memory or it's updating an existing one?
Can you dump the record after you add it over rpc and send it over to mailing list to see what attributes it has?
Cheers, Daniel
On 14/01/2017 16:25, Vik Killa wrote:
resolution update -- we found that setting `modparam("usrloc", "db_check_update", 1)`
fix the issue by inserting missing rows on re-reg
Thanks!
On Fri, Jan 13, 2017 at 9:30 AM, Vik Killa vipkilla@gmail.com wrote:
Hi Daniel, RPC flush is not setting the flag, but im not sure that is where the issue is, as I stated, we are not setting any memory-only flags with save()
But here is the flush function (FL_MEM not set)
static void ul_rpc_flush(rpc_t* rpc, void* ctx) { synchronize_all_udomains(0, 1); return; }
Any ideas? Thanks, /V
On Fri, Jan 13, 2017 at 9:24 AM, Vik Killa vipkilla@gmail.com wrote:
Hi, We have tried using these flags:
save("location") save("location", "0x00") save("location", "0x04")
And still memory does not get flushed to DB. I will test the RPC command. Thanks, /V
On Fri, Jan 13, 2017 at 9:12 AM, Daniel-Constantin Mierla < miconda@gmail.com> wrote:
Hello,
that flag is used to mark a contact for storage only in memory. The save() function has a parameter with flags where this kind of storage can be set. Can you check the RPC command is setting this flag? Cheers, Daniel
On 13/01/2017 15:06, Vik Killa wrote:
following up here i found if we comment out a single line of code, kamcmd ul.flush works
here is the git diff
diff --git a/src/modules/usrloc/ucontact.c b/src/modules/usrloc/ucontact.c index 47f3c2f..633ca81 100644 --- a/src/modules/usrloc/ucontact.c +++ b/src/modules/usrloc/ucontact.c @@ -474,7 +474,7 @@ int db_insert_ucontact(ucontact_t* _c) int nr_cols;
if (_c->flags & FL_MEM) {
return 0;
//return 0; } if(unlikely(_c->ruid.len<=0)) { LM_ERR("invalid ruid for aor: %.*s\n",
I don't quite understand the logic in that code. Does anyone have an idea of why ` if (_c->flags & FL_MEM) {` returns?
Thanks, /V
On Thu, Jan 12, 2017 at 4:34 PM, Vik Killa vipkilla@gmail.com wrote:
Hello, we've noticed that the usrloc module does not "sync" all the records from memory into the database. I use a bash script to generate in-memory AoRs ( http://paste.debian.net/plain/908521) then i perform kamcmd ul.flush and no records are inserted. We have tried various usrloc parameters but none seem to work Here is our basic setup
# ----- usrloc params ----- modparam("usrloc", "db_url", DBURL) modparam("usrloc", "db_mode", 2) modparam("usrloc", "use_domain", 1) modparam("usrloc", "timer_interval", 120) modparam("usrloc", "timer_procs", 4)
We are using postgresql. are we missing something?
Thanks /V
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-users@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierlawww.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
_______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cg i-bin/mailman/listinfo/sr-users
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-users@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierlawww.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users