Hello,
perhaps someone needs to dive in the code of db_cassandra. Not long ago, there was a discussion saying that the module is using an old lib version and may not actually work. There were exposed plans to eventually update it.
Are you using the old cassandra lib version?
Cheers, Daniel
On 12/05/16 18:17, SamyGo wrote:
Hi List,
I'm trying to hook up userblacklist module with db_cassandra. I've kamailio keyspace configured with tables for userblacklist , globalblacklist, and version are created with some data in there.
Here is setup info:
version: kamailio 4.4.1
*kamailio.cfg* ... loadmodule "db_cassandra.so" modparam("db_cassandra", "schema_path","/etc/kamailio/kamailio")
loadmodule "userblacklist.so" modparam("userblacklist", "db_url", "cassandra://:@127.0.0.1:9160/kamailio http://127.0.0.1:9160/kamailio") modparam("userblacklist", "userblacklist_table", "userblacklist") modparam("userblacklist", "globalblacklist_table", "globalblacklist")
*SCHEMA PATH:* root@whit-list:/etc/kamailio/kamailio# ls userblacklist version root@whit-list:/etc/kamailio/kamailio# cat version/version table_name(string) table_version(int) table_name
root@whit-list:/etc/kamailio/kamailio# cat userblacklist/userblacklist id(int) username(string) domain(string) prefix(string) whitelist(int) id username
*CASSANDRA DB*
root@whit-list:/etc/kamailio/kamailio# cqlsh Connected to Test Cluster at 127.0.0.1:9042 http://127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 3.5 | CQL spec 3.4.0 | Native protocol v4] Use HELP for help. cqlsh> use kamailio ... ; cqlsh:kamailio> describe tables;
globalblacklist version userblacklist
cqlsh:kamailio> select * from version;
table_name | table_version -----------------+--------------- uacreg | 2 version | 1 globalblacklist | 1 userblacklist | 1
(4 rows)
Every time I start up Kamailio I see the following debug logs:
0(13877) DEBUG: db_cassandra [dbcassa_table.c:572]: dbcassa_read_table_schemas(): Full name= /etc/kamailio/kamailio/ 0(13877) DEBUG: db_cassandra [dbcassa_table.c:589]: dbcassa_read_table_schemas(): Full dir name= /etc/kamailio/kamailio/version 0(13877) DEBUG: db_cassandra [dbcassa_table.c:609]: dbcassa_read_table_schemas(): Found database version 0(13877) DEBUG: db_cassandra [dbcassa_table.c:620]: dbcassa_read_table_schemas(): database table version 0(13877) DEBUG: db_cassandra [dbcassa_table.c:630]: dbcassa_read_table_schemas(): File path= /etc/kamailio/kamailio/version/version 0(13877) DEBUG: db_cassandra [dbcassa_table.c:200]: dbcassa_load_file(): loading file [/etc/kamailio/kamailio/version/version] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:122]: dbcassa_table_new(): mtime is 1463068672 0(13877) DEBUG: db_cassandra [dbcassa_table.c:240]: dbcassa_load_file(): new col [table_name] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:253]: dbcassa_load_file(): column[0] is STR! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:283]: dbcassa_load_file(): column[0] is actually STRING! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:240]: dbcassa_load_file(): new col [table_version] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:253]: dbcassa_load_file(): column[1] is STR! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:283]: dbcassa_load_file(): column[1] is actually STRING! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:350]: dbcassa_load_file(): col [table_name] in primary key 0(13877) DEBUG: db_cassandra [dbcassa_table.c:589]: dbcassa_read_table_schemas(): Full dir name= /etc/kamailio/kamailio/userblacklist 0(13877) DEBUG: db_cassandra [dbcassa_table.c:609]: dbcassa_read_table_schemas(): Found database userblacklist 0(13877) DEBUG: db_cassandra [dbcassa_table.c:620]: dbcassa_read_table_schemas(): database table userblacklist 0(13877) DEBUG: db_cassandra [dbcassa_table.c:630]: dbcassa_read_table_schemas(): File path= /etc/kamailio/kamailio/userblacklist/userblacklist 0(13877) DEBUG: db_cassandra [dbcassa_table.c:200]: dbcassa_load_file(): loading file [/etc/kamailio/kamailio/userblacklist/userblacklist] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:122]: dbcassa_table_new(): mtime is 1462985556 0(13877) DEBUG: db_cassandra [dbcassa_table.c:240]: dbcassa_load_file(): new col [id] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:258]: dbcassa_load_file(): column[0] is INT! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:240]: dbcassa_load_file(): new col [username] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:253]: dbcassa_load_file(): column[1] is STR! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:283]: dbcassa_load_file(): column[1] is actually STRING! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:240]: dbcassa_load_file(): new col [domain] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:253]: dbcassa_load_file(): column[2] is STR! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:283]: dbcassa_load_file(): column[2] is actually STRING! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:240]: dbcassa_load_file(): new col [prefix] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:253]: dbcassa_load_file(): column[3] is STR! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:283]: dbcassa_load_file(): column[3] is actually STRING! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:240]: dbcassa_load_file(): new col [whitelist] 0(13877) DEBUG: db_cassandra [dbcassa_table.c:258]: dbcassa_load_file(): column[4] is INT! 0(13877) DEBUG: db_cassandra [dbcassa_table.c:350]: dbcassa_load_file(): col [id] in primary key 0(13877) DEBUG: db_cassandra [dbcassa_table.c:350]: dbcassa_load_file(): col [username] in primary key ..... 0(12780) DEBUG: db_cassandra [dbcassa_base.cpp:149]: db_cassa_new_connection(): opening connection: cassa://xxxx:xxxx@127.0.0.1:9160/kamailio http://xxxx:xxxx@127.0.0.1:9160/kamailio 0(12780) DEBUG: <core> [mem/f_malloc.c:439]: fm_malloc(): fm_malloc(0x7f4e36140010, 48) called from db_cassandra: dbcassa_base.cpp: db_cassa_new_connection(155) 0(12780) DEBUG: <core> [mem/f_malloc.c:514]: fm_malloc(): fm_malloc(0x7f4e36140010, 48) returns address 0x7f4e361bb5f0 0(12780) DEBUG: db_cassandra [dbcassa_base.cpp:161]: db_cassa_new_connection(): 0x7f4e361bb5f0=pkg_malloc(48) 0(12780) DEBUG: db_cassandra [dbcassa_base.cpp:117]: dbcassa_open(): Opened connection to Cassandra cluster 127.0.0.1:9160 http://127.0.0.1:9160 0(12780) DEBUG: db_cassandra [dbcassa_base.cpp:955]: db_cassa_query(): query table=version 0(12780) ERROR: db_cassandra [dbcassa_base.cpp:449]: *cassa_translate_query(): table version does not exist!* 0(12780) ERROR: db_cassandra [dbcassa_base.cpp:962]: db_cassa_query(): Failed to query Cassandra cluster 0(12780) ERROR: <core> [db.c:397]: db_table_version(): error in db_query 0(12780) ERROR: <core> [db.c:436]: db_check_table_version(): querying version for table userblacklist 0(12780) ERROR: userblacklist [db_userblacklist.c:86]: userblacklist_db_init(): during table version check. 0(12780) DEBUG: <core> [db_pool.c:100]: pool_remove(): removing connection from the pool 0(12780) DEBUG: <core> [mem/f_malloc.c:575]: fm_free(): fm_free(0x7f4e36140010, 0x7f4e361bb5f0), called from db_cassandra: dbcassa_base.cpp: db_cassa_free_connection(203) 0(12780) DEBUG: <core> [mem/f_malloc.c:594]: fm_free(): fm_free: freeing block alloc'ed from db_cassandra: dbcassa_base.cpp: db_cassa_new_connection(155) 0(12780) DEBUG: <core> [mem/f_malloc.c:575]: fm_free(): fm_free(0x7f4e36140010, 0x7f4e361bb318), called from core: db.c: db_do_close(356) 0(12780) DEBUG: <core> [mem/f_malloc.c:594]: fm_free(): fm_free: freeing block alloc'ed from core: db.c: db_do_init2(298) 0(12780) ERROR: <core> [sr_module.c:968]: init_mod(): Error while initializing module userblacklist (/usr/local/lib64/kamailio/modules/userblacklist.so) ERROR: error while initializing modules
Any help would be highly appreciated.
Regards, Sammy
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