Hello Daniel,

I took a pcap trace. And I see the following in the answer sent by mongo

Failed to parse: { find: "version", filter: { table_name: "location" },
table_version: 1, $db: "kamailio", $readPreference: { mode:
"primaryPreferred" }, $clusterTime: { clusterTime: Timestamp(1519379980,
1), signature: { hash: BinData(0,
0000000000000000000000000000000000000000), keyId: 0 } } }. Unrecognized
field 'table_version'.code
codeNameFailedToParseoperationTimeZ$clusterTimeXclusterTimeZsignature3hashkeyId

Kind regards,
Stephane

On 23 February 2018 at 09:39, Daniel-Constantin Mierla <mico...@gmail.com>
wrote:

> 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
> ,10.0.12.150,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 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 (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 
> Listsr-users@lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
>
> --
> Daniel-Constantin Mierlawww.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
>
>

Attachment: mongoqueryresponse.pcapng
Description: Binary data

_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to