[SR-Users] kamailio presence server using db_mongodb as database

Daniel-Constantin Mierla miconda at gmail.com
Tue Aug 18 14:10:04 CEST 2015


Hello,

if I remember correctly, the default type for numbers is float/double.
You have to use a special form/function in mongo client when inserting a
record to force the type of the value to be integer.

Perhaps searching on the web of how to insert an integer value in
mongodb will give you the proper hings.

Cheers,
Daniel

On 18/08/15 13:17, José Seabra wrote:
> Hi,
> Well i didn't noticed before, but after create a document in mongodb
> the error that kamailio gives now is different but it still  related
> with table version check.
>
> Seems that kamailio can query the document successfully and get the
> table_version field.
>
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:671]:
> db_mongodb_convert_result(): selected document: { "_id" : { "$oid" :
> "55d2fc84b04c015195aee4b2" }, "table_version" : 4 }
>  0(3068) DEBUG: <core> [db_row.c:117]: db_allocate_row(): allocate 32
> bytes for row values at 0x7fe6fee76390
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:522]:
> db_mongodb_convert_bson(): looking for field[0] named: table_version
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:610]:
> db_mongodb_convert_bson():
> RES_NAMES(0x7fe6fee72490)[0]=[table_version] (1)
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:682]:
> db_mongodb_convert_result(): retrieved number of rows: 1
>  *0(3068) ERROR: <core> [db.c:414]: db_table_version(): invalid type
> (2) or nul (0) version columns for presentity*
>
>
>
> ALL Log:
>
> Listening on 
>              udp: 10.0.20.100:5080 <http://10.0.20.100:5080>
> Aliases: 
>
>  0(3066) DEBUG: <core> [cfg/cfg.c:176]: cfg_declare(): DEBUG:
> register_cfg_def(): new config group has been registered: 'core'
> (num=50, size=200)
>  0(3066) DEBUG: <core> [cfg/cfg.c:176]: cfg_declare(): DEBUG:
> register_cfg_def(): new config group has been registered: 'tcp'
> (num=26, size=104)
>  0(3066) DEBUG: <core> [timer.c:255]: init_timer(): starting with
> *ticks=1210106959
>  0(3066) DEBUG: <core> [timer.c:297]: init_timer(): timer_list between
> 0x7fe6ebf85728 and 0x7fe6ebfc9728
>  0(3066) INFO: <core> [tcp_main.c:4656]: init_tcp(): using epoll_lt as
> the io watch method (auto detected)
>  0(3068) DEBUG: <core> [daemonize.c:207]: enable_dumpable(): trying
> enable core dumping...
>  0(3068) DEBUG: <core> [daemonize.c:225]: enable_dumpable(): core
> dumping is enabled now (1)...
>  0(3068) DEBUG: <core> [daemonize.c:583]: set_core_dump(): core dump
> limits set to 18446744073709551615
>  0(3068) DEBUG: <core> [async_task.c:88]: async_task_init(): start
> initializing asynk task framework
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): db_text
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): db_mysql
>  0(3068) DEBUG: db_mysql [km_db_mysql.c:86]: kam_mysql_mod_init():
> MySQL client version is 5.1.73
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): db_mongodb
>  0(3068) DEBUG: db_mongodb [db_mongodb_mod.c:98]: mod_init(): module
> initializing
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): sl
>  0(3068) DEBUG: <core> [md5utils.c:67]: MD5StringArray(): MD5
> calculated: f452807bca511b98621cbbe6e749d8ef
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <load_tm> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) ERROR: tm [tm_load.c:37]: load_tm(): tm:load_tm: Module not
> initialized yet, make sure that all modules that need tm module are
> loaded after tm in the configuration file
>  0(3068) INFO: sl [sl.c:157]: mod_init(): could not bind tm module -
> only stateless mode available during modules initialization
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): maxfwd
>  0(3068) DEBUG: <core> [cfg/cfg.c:176]: cfg_declare(): DEBUG:
> register_cfg_def(): new config group has been registered: 'maxfwd'
> (num=1, size=4)
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): textops
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): tm
>  0(3068) DEBUG: tm [tm.c:756]: mod_init(): TM - (sizeof cell=488,
> sip_msg=1768) initializing...
>  0(3068) DEBUG: tm [callid.c:101]: init_callid(): Call-ID
> initialization: '76bf762544f60619'
>  0(3068) DEBUG: tm [lock.c:74]: lock_initialize(): DEBUG:
> lock_initialize: lock initialization started
>  0(3068) DEBUG: tm [timer.c:199]: tm_init_timers(): tm:
> tm_init_timers: fr=480 fr_inv=1920 wait=80 delete=4 t1=500 t2=4000
> max_inv_lifetime=2880 max_noninv_lifetime=512
>  0(3068) DEBUG: <core> [cfg/cfg.c:176]: cfg_declare(): DEBUG:
> register_cfg_def(): new config group has been registered: 'tm'
> (num=36, size=168)
>  0(3068) DEBUG: <core> [md5utils.c:67]: MD5StringArray(): MD5
> calculated: eabd4dc455c32eca91da2be9405373ce
>  0(3068) DEBUG: <core> [md5utils.c:67]: MD5StringArray(): MD5
> calculated: 176231eb72a239b3e7f931a1ef6c4100
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): rr
>  0(3068) DEBUG: <core> [sr_module.c:678]: find_mod_export_record():
> find_export_record: <bind_ob> not found 
>  0(3068) INFO: rr [../outbound/api.h:54]: ob_load_api(): Failed to
> import bind_ob
>  0(3068) INFO: rr [rr_mod.c:174]: mod_init(): outbound module not
> available
>  0(3068) DEBUG: <core> [sr_module.c:942]: init_mod(): presence
>  0(3068) DEBUG: presence [presence.c:274]: mod_init():
> db_url=mongodb://localhost/kamailio/28/0x7fe6fee55608
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <bind_sl> in module sl
> [/usr/local/lib64/kamailio/modules/sl.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <load_tm> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <t_newtran> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <t_relay_to_tcp> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <t_relay_to_udp> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <t_relay> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <t_forward_nonack> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <t_release> in module tm
> [/usr/local/lib64/kamailio/modules/tm.so]
>  0(3068) DEBUG: <core> [sr_module.c:672]: find_mod_export_record():
> find_export_record: found <db_bind_api> in module db_mongodb
> [/usr/local/lib64/kamailio/modules/db_mongodb.so]
>  0(3068) DEBUG: <core> [db.c:205]: db_bind_mod(): using db bind api
> for db_mongodb
>  0(3068) DEBUG: <core> [db.c:310]: db_do_init2(): connection
> 0x7fe6fee72190 not found in pool
>  0(3068) DEBUG: db_mongodb [mongodb_connection.c:55]:
> db_mongodb_new_connection(): connection open to:
> mongodb://localhost/kamailio
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:851]: db_mongodb_query():
> query to collection [version]
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:885]: db_mongodb_query():
> query filter: { "table_name" : "presentity" }
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:904]: db_mongodb_query():
> columns filter: { "table_version" : 1 }
>  0(3068) DEBUG: <core> [db_res.c:116]: db_new_result(): allocate 56
> bytes for result set at 0x7fe6fee72338
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:349]:
> db_mongodb_get_columns(): 1 columns returned from the query
>  0(3068) DEBUG: <core> [db_res.c:154]: db_allocate_columns(): allocate
> 8 bytes for result names at 0x7fe6fee72410
>  0(3068) DEBUG: <core> [db_res.c:165]: db_allocate_columns(): allocate
> 4 bytes for result types at 0x7fe6fee72450
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:377]:
> db_mongodb_get_columns(): Found a field[0] named: table_version
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:396]:
> db_mongodb_get_columns(): allocate 16 bytes for RES_NAMES[0] at
> 0x7fe6fee72490
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:416]:
> db_mongodb_get_columns(): use DB1_DOUBLE result type
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:460]:
> db_mongodb_get_columns(): RES_NAMES(0x7fe6fee72490)[0]=[table_version] (1)
>  0(3068) DEBUG: <core> [db_res.c:184]: db_allocate_rows(): allocate
> 16000 bytes for rows at 0x7fe6fee724d8
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:671]:
> db_mongodb_convert_result(): selected document: { "_id" : { "$oid" :
> "55d2fc84b04c015195aee4b2" }, "table_version" : 4 }
>  0(3068) DEBUG: <core> [db_row.c:117]: db_allocate_row(): allocate 32
> bytes for row values at 0x7fe6fee76390
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:522]:
> db_mongodb_convert_bson(): looking for field[0] named: table_version
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:610]:
> db_mongodb_convert_bson():
> RES_NAMES(0x7fe6fee72490)[0]=[table_version] (1)
>  0(3068) DEBUG: db_mongodb [mongodb_dbase.c:682]:
> db_mongodb_convert_result(): retrieved number of rows: 1
>  0(3068) ERROR: <core> [db.c:414]: db_table_version(): invalid type
> (2) or nul (0) version columns for presentity
>  0(3068) DEBUG: <core> [db_res.c:79]: db_free_columns(): freeing 1 columns
>  0(3068) DEBUG: <core> [db_res.c:83]: db_free_columns(): freeing
> RES_NAMES[0] at 0x7fe6fee72490
>  0(3068) DEBUG: <core> [db_res.c:92]: db_free_columns(): freeing
> result names at 0x7fe6fee72410
>  0(3068) DEBUG: <core> [db_res.c:97]: db_free_columns(): freeing
> result types at 0x7fe6fee72450
>  0(3068) DEBUG: <core> [db_res.c:52]: db_free_rows(): freeing 1 rows
>  0(3068) DEBUG: <core> [db_row.c:95]: db_free_row(): freeing row
> values at 0x7fe6fee76390
>  0(3068) DEBUG: <core> [db_res.c:60]: db_free_rows(): freeing rows at
> 0x7fe6fee724d8
>  0(3068) DEBUG: <core> [db_res.c:134]: db_free_result(): freeing
> result set at 0x7fe6fee72338
>  0(3068) ERROR: <core> [db.c:432]: db_check_table_version(): querying
> version for table presentity
> * 0(3068) ERROR: presence [presence.c:358]: mod_init(): error during
> table version check*
> * 0(3068) ERROR: <core> [sr_module.c:945]: init_mod(): Error while
> initializing module presence
> (/usr/local/lib64/kamailio/modules/presence.so)*
> ERROR: error while initializing modules
>  0(3068) DEBUG: <core> [db_pool.c:100]: pool_remove(): removing
> connection from the pool
>  0(3068) DEBUG: tm [t_funcs.c:86]: tm_shutdown(): DEBUG: tm_shutdown :
> start
>  0(3068) DEBUG: tm [t_funcs.c:89]: tm_shutdown(): DEBUG: tm_shutdown :
> emptying hash table
>  0(3068) DEBUG: tm [t_funcs.c:91]: tm_shutdown(): DEBUG: tm_shutdown :
> removing semaphores
>  0(3068) DEBUG: tm [t_funcs.c:93]: tm_shutdown(): DEBUG: tm_shutdown :
> destroying tmcb lists
>  0(3068) DEBUG: tm [t_funcs.c:96]: tm_shutdown(): DEBUG: tm_shutdown :
> done
>  0(3068) DEBUG: db_text [dbtext.c:106]: destroy(): destroy ...
>  0(3068) INFO: <core> [sctp_core.c:53]: sctp_core_destroy(): SCTP API
> not initialized
>  0(3068) DEBUG: <core> [mem/shm_mem.c:232]: shm_mem_destroy():
> shm_mem_destroy
>  0(3068) DEBUG: <core> [mem/shm_mem.c:235]: shm_mem_destroy():
> destroying the shared memory lock
>
>
> Best regards

-- 
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Book: SIP Routing With Kamailio - http://www.asipto.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20150818/c9c36f51/attachment.html>


More information about the sr-users mailing list