[SR-Users] dmq_usrloc, usrloc:db_mode 3, and PostgreSQL

Charles Chance charles.chance at sipcentric.com
Mon Dec 18 12:50:55 CET 2017


Hi Alex,

Can you provide your usrloc and dmq_usrloc module parameters please?

Cheers,

Charles


On Fri, 15 Dec 2017 at 20:54, Alex Balashov <abalashov at evaristesys.com>
wrote:

> By way of follow-up:
>
> db_mode 1 likewise fails, in the same fashion.
>
> db_mode 2 does work and successfully sync the contact to the DB on
> timer_interval.
>
> So, I suspect this is some sort of race that raises when immediate
> database write-through is required.
>
> On Fri, Dec 15, 2017 at 02:31:06PM -0500, Alex Balashov wrote:
>
> > Hi,
> >
> > Running bleeding-edge branch 5.1 clone here.
> >
> > dmq_usrloc replication works fine when using in-memory only backing for
> > the underlying usrloc module, i.e. db_mode 0. I haven't tried mode 1 and
> > mode 2.
> >
> > I use mode 3, so that contacts are immediately persisted straight to a
> > local database. The database flavour is PostgreSQL in this case.
> >
> > When new contacts replicated via dmq_usrloc come in, I get this in the
> > Kamailio log:
> >
> > Dec 15 19:23:35 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: <core> [db.c:465]: db_use_table(): invalid parameter value
> > Dec 15 19:23:35 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: usrloc [udomain.c:817]: db_load_urecord_by_ruid(): failed to use
> table location
> > Dec 15 19:23:35 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> WARNING: dmq_usrloc [usrloc_sync.c:147]: delete_contact(): AOR/Contact not
> found
> > Dec 15 19:23:35 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: <core> [db.c:465]: db_use_table(): invalid parameter value
> > Dec 15 19:23:35 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: usrloc [udomain.c:817]: db_load_urecord_by_ruid(): failed to use
> table location
> > Dec 15 19:23:35 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> WARNING: dmq_usrloc [usrloc_sync.c:147]: delete_contact(): AOR/Contact not
> found
> >
> > I added some code to lib/srdb1/db.c to print the parameter name and the
> > location being passed to db_use_table():
> >
> >   */
> >  int db_use_table(db1_con_t* _h, const str* _t)
> >  {
> > +       LM_ERR("DB handle = %p\n", _h);
> > +
> >         if (!_h || !_t || !_t->s) {
> > -               LM_ERR("invalid parameter value\n");
> > +               LM_ERR("invalid parameter value %.*s\n", _t->len, _t->s);
> >                 return -1;
> >         }
> >
> > And got this:
> >
> > Dec 15 19:23:36 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: <core> [db.c:462]: db_use_table(): DB handle = (nil)
> > Dec 15 19:23:36 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: <core> [db.c:465]: db_use_table(): invalid parameter value location
> > Dec 15 19:23:36 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: usrloc [udomain.c:631]: db_load_urecord(): failed to use table
> location
> > Dec 15 19:23:36 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: <core> [db.c:462]: db_use_table(): DB handle = (nil)
> > Dec 15 19:23:36 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: <core> [db.c:465]: db_use_table(): invalid parameter value location
> > Dec 15 19:23:36 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: usrloc [ucontact.c:679]: db_insert_ucontact(): sql use_table failed
> > Dec 15 19:23:36 evaristesys-testbed-2 /usr/local/sbin/kamailio[9395]:
> ERROR: usrloc [urecord.c:582]: insert_ucontact(): failed to insert in
> database
> >
> > So, it appears the DB handle being passed here is NULL is in this
> > situation.
> >
> > The same AOR is present in 'ul.dump' RPC command when using db_mode 0.
> >
> > Please advise? :)
> >
> > -- Alex
> >
> > --
> > Alex Balashov | Principal | Evariste Systems LLC
> >
> > Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
> > Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
> >
> > _______________________________________________
> > Kamailio (SER) - Users Mailing List
> > sr-users at lists.kamailio.org
> > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
> --
> Alex Balashov | Principal | Evariste Systems LLC
>
> Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
> Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>

-- 
Sipcentric Ltd. Company registered in England & Wales no. 7365592. Registered 
office: Faraday Wharf, Innovation Birmingham Campus, Holt Street, 
Birmingham Science Park, Birmingham B7 4BB.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20171218/37c3111e/attachment.html>


More information about the sr-users mailing list