Hello, I don't know if you can see the result sent back by mongodb in its logs, it doesn't show it there. Maybe you can sniff the traffic on the network and see if mongodb sends the proper response back. Kamailio logs like nothing was retrieved.
Cheers, Daniel On 22.02.18 18:02, Stephane Focant wrote: > Hello, > I have an issue when I try to use kamailio 5.1 with usrloc and > db_mongdb modules. > When I try to start kamailio, I get the following error: > > 0(22216) DEBUG: <core> [db.c:314]: db_do_init2(): connection > 0x7f735b5c4100 not found in pool > 0(22216) DEBUG: db_mongodb [mongodb_connection.c:55]: > db_mongodb_new_connection(): connection open to: mongodb://10.0.12.149 > <http://10.0.12.149>,10.0.12.150,10.0.12.151/kamailio?replicaSet=sre_location&slaveOk=true&readPreference=primaryPreferred > <http://10.0.12.151/kamailio?replicaSet=sre_location&slaveOk=true&readPreference=primaryPreferred> > 0(22216) DEBUG: db_mongodb [mongodb_dbase.c:864]: db_mongodb_query(): > query to collection [version] > 0(22216) DEBUG: db_mongodb [mongodb_dbase.c:898]: db_mongodb_query(): > query filter: { "table_name" : "location" } > 0(22216) DEBUG: db_mongodb [mongodb_dbase.c:917]: db_mongodb_query(): > columns filter: { "table_version" : 1 } > 0(22216) DEBUG: <core> [db_res.c:120]: db_new_result(): allocate 56 > bytes for result set at 0x7f735b5c4450 > 0(22216) DEBUG: db_mongodb [mongodb_dbase.c:746]: > db_mongodb_store_result(): no result from mongodb > 0(22216) DEBUG: <core> [db.c:404]: db_table_version(): no row for > table location found > 0(22216) ERROR: <core> [db.c:450]: db_check_table_version(): invalid > version 0 for table location found, expected 9 (check table structure > and table "version") > 0(22216) ERROR: usrloc [dlist.c:659]: register_udomain(): error > during table version check. > 0(22216) DEBUG: <core> [db_pool.c:100]: pool_remove(): removing > connection from the pool > 0(22216) ERROR: registrar [registrar.c:651]: domain_fixup(): failed > to register domain > 0(22216) ERROR: <core> [core/route.c:1154]: fix_actions(): fixing > failed (code=-1) at > cfg:/usr/local/kamailio-5.1/etc/kamailio/kamailio.cfg:660 > 0(22216) ERROR: <core> [core/rvalue.c:3860]: fix_rval_expr(): failure > in cfg at line: 660 col: 22 > 0(22216) ERROR: <core> [core/rvalue.c:3860]: fix_rval_expr(): failure > in cfg at line: 660 col: 22 > 0(22216) ERROR: <core> [core/route.c:1154]: fix_actions(): fixing > failed (code=-1) at > cfg:/usr/local/kamailio-5.1/etc/kamailio/kamailio.cfg:663 > ERROR: error -1 while trying to fix configuration > 0(22216) DEBUG: tm [t_funcs.c:85]: tm_shutdown(): start > 0(22216) DEBUG: tm [t_funcs.c:88]: tm_shutdown(): emptying hash table > 0(22216) DEBUG: tm [t_funcs.c:90]: tm_shutdown(): removing semaphores > 0(22216) DEBUG: tm [t_funcs.c:92]: tm_shutdown(): destroying tmcb lists > 0(22216) DEBUG: tm [t_funcs.c:95]: tm_shutdown(): done > 0(22216) INFO: <core> [core/sctp_core.c:53]: sctp_core_destroy(): > SCTP API not initialized > 0(22216) DEBUG: <core> [core/mem/shm.c:261]: shm_destroy_manager(): > destroying memory manager: q_malloc > 0(22216) DEBUG: <core> [core/mem/q_malloc.c:1165]: > qm_shm_lock_destroy(): destroying the shared memory lock > 0(22216) DEBUG: <core> [core/mem/pkg.c:91]: pkg_destroy_manager(): > destroying memory manager: q_malloc > > > In mongoDB, I have the collection "version" in the db kamailio, and > the entries needed for usrloc (location and location_attrs): > sre_location:PRIMARY> use kamailio > switched to db kamailio > sre_location:PRIMARY> db.getCollection("version").find() > { "_id" : ObjectId("5a8ec43c601b262bef82a595"), "table_name" : > "location", "table_version" : 9 } > { "_id" : ObjectId("5a8edb72a3ec40427577b8d0"), "table_name" : > "location_attrs", "table_version" : 1 } > > > And logs in mongo show the following info when kamailio starts: > > 2018-02-22T17:13:02.604+0100 I NETWORK [conn90] received client > metadata from 10.0.12.180:56320 <http://10.0.12.180:56320> conn: { > driver: { name: "mongoc", version: "1.9.2" }, os: { type: "Linux", > name: "CentOS", version: "6.9 (Final)", architecture: "x86_64" }, > platform: "cfg=0x1563000 posix=200809 CC=GCC 4.4.7 20120313 (Red Hat > 4.4.7-18) CFLAGS="" LDFLAGS=""" } > 2018-02-22T17:13:02.604+0100 I COMMAND [conn90] command admin.$cmd > command: isMaster { isMaster: 1, client: { driver: { name: "mongoc", > version: "1.9.2" }, os: { type: "Linux", name: "CentOS", version: "6.9 > (Final)", architecture: "x86_64" }, platform: "cfg=0x1563000 > posix=200809 CC=GCC 4.4.7 20120313 (Red Hat 4.4.7-18) CFLAGS="" > LDFLAGS=""" }, compression: [], $readPreference: { mode: > "secondaryPreferred" }, $db: "admin" } numYields:0 reslen:716 locks:{} > protocol:op_query 0ms > 2018-02-22T17:13:02.604+0100 I COMMAND [conn90] command kamailio.$cmd > command: find { find: "version", filter: { table_name: "location" }, > table_version: 1, $db: "kamailio", $readPreference: { mode: > "primaryPreferred" }, $clusterTime: { clusterTime: > Timestamp(1519315979, 1), signature: { hash: BinData(0, > 0000000000000000000000000000000000000000), keyId: 0 } } } numYields:0 > reslen:531 locks:{} protocol:op_msg 0ms > 2018-02-22T17:13:02.605+0100 I NETWORK [conn90] end connection > 10.0.12.180:56320 <http://10.0.12.180:56320> (9 connections now open) > > I probably miss something: it is not clear to me why kamailio is not > able to retrieve the value of table_version for the table_name > location. Any idea would be very welcome ! > > I use mongo-c-driver 1.9.2 and mongodb 3.6 > > Thank you. > Stephane > > > _______________________________________________ > Kamailio (SER) - Users Mailing List > sr-users@lists.kamailio.org > https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierla www.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio Advanced Training - March 5-7, 2018, Berlin - www.asipto.com Kamailio World Conference - May 14-16, 2018 - www.kamailioworld.com
_______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users