[SR-Users] critical crash with dbtext

Daniel-Constantin Mierla miconda at gmail.com
Mon May 18 15:40:20 CEST 2015


Hello,

you can find the db_text database schema in the source tree, at:

utils/kamctl/dbtext/kamailio/

I think kamdbctl will create it if you set the appropriate engine in
kamctlrc.

Apparently, the readme needs some updates.

Cheers,
Daniel

On 18/05/15 10:33, jaflong jaflong wrote:
>
> /usr/local/sbin/kamailio -V
>
> version: kamailio 4.2.4 (x86_64/linux) be62bd
> flags: STATS: Off, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC, DBG_F_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES
> ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
> poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
> id: be62bd 
> compiled on 14:16:35 May  6 2015 with gcc 4.4.7
>
>
> I created the tables just with the cat command shown and thats all they contain
>
>
> I found the location table inscruction here
> http://kamailio.org/docs/modules/4.2.x/modules/db_text.html
>
>
>  Example 1.2. Minimal Kamailio location dbtext table definition
>
> ...
> username(str) contact(str) expires(int) q(double) callid(str) cseq(int)
> ...
>
>
> Please could you advise on correct location table structure
>
>
> Regards
>
>
> 15.05.2015, 20:52, "Daniel-Constantin Mierla" <miconda at gmail.com>:
>> Hello,
>>
>> what is the version of your kamailio? Get the output of:
>>
>> kamailio -V
>>
>> How did you create the tables? At least the location is not valid for
>> any of the past several stable versions.
>>
>> Cheers,
>> Daniel
>>
>> On 15/05/15 12:01, jaflong jaflong wrote:
>>>  HI
>>>
>>>  When using dbtext setup I receive a CRITICAL error and shut down. This is the debug log.
>>>  My config settings are described below.
>>>
>>>  Please advise how I should fo the correct dbtext config
>>>
>>>   9(21196) DEBUG: <core> [sr_module.c:920]: init_mod_child(): DEBUG: init_mod_child (-4): acc
>>>   9(21196) DEBUG: <core> [sr_module.c:920]: init_mod_child(): DEBUG: init_mod_child (-4): auth_db
>>>   9(21196) DEBUG: <core> [sr_module.c:920]: init_mod_child(): DEBUG: init_mod_child (-4): debugger
>>>   9(21196) DEBUG: debugger [debugger_mod.c:179]: child_init(): rank is (-4)
>>>   9(21196) DEBUG: <core> [local_timer.c:74]: init_local_timer(): init_local_timer: timer_list between 0x9e7268 and 0xa2b268
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 8, 4, 0x7f5aaa402364), fd_no=0
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 9, 4, 0x7f5aaa4023f0), fd_no=1
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 10, 4, 0x7f5aaa40247c), fd_no=2
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 11, 4, 0x7f5aaa402508), fd_no=3
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 12, 4, 0x7f5aaa402594), fd_no=4
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 13, 4, 0x7f5aaa402620), fd_no=5
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 14, 4, 0x7f5aaa4026ac), fd_no=6
>>>   9(21196) DEBUG: <core> [io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x9e70a0, 15, 4, 0x7f5aaa402738), fd_no=7
>>>   9(21196) CRITICAL: <core> [pass_fd.c:293]: receive_fd(): EOF on 8
>>>   9(21196) DEBUG: <core> [tcp_main.c:3537]: handle_ser_child(): DBG: handle_ser_child: dead child 1, pid 21188 (shutting down?)
>>>   9(21196) DEBUG: <core> [io_wait.h:610]: io_watch_del(): DBG: io_watch_del (0x9e70a0, 8, -1, 0x0) fd_no=8 called
>>>   9(21196) CRITICAL: <core> [pass_fd.c:293]: receive_fd(): EOF on 9
>>>   9(21196) DEBUG: <core> [tcp_main.c:3537]: handle_ser_child(): DBG: handle_ser_child: dead child 2, pid 21189 (shutting down?)
>>>   9(21196) DEBUG: <core> [io_wait.h:610]: io_watch_del(): DBG: io_watch_del (0x9e70a0, 9, -1, 0x0) fd_no=7 called
>>>   9(21196) CRITICAL: <core> [pass_fd.c:293]: receive_fd(): EOF on 10
>>>   9(21196) DEBUG: <core> [tcp_main.c:3537]: handle_ser_child(): DBG: handle_ser_child: dead child 3, pid 21190 (shutting down?)
>>>   9(21196) DEBUG: <core> [io_wait.h:610]: io_watch_del(): DBG: io_watch_del (0x9e70a0, 10, -1, 0x0) fd_no=6 called
>>>   9(21196) CRITICAL: <core> [pass_fd.c:293]: receive_fd(): EOF on 11
>>>   9(21196) DEBUG: <core> [tcp_main.c:3537]: handle_ser_child(): DBG: handle_ser_child: dead child 4, pid 21191 (shutting down?)
>>>   9(21196) DEBUG: <core> [io_wait.h:610]: io_watch_del(): DBG: io_watch_del (0x9e70a0, 11, -1, 0x0) fd_no=5 called
>>>   9(21196) CRITICAL: <core> [pass_fd.c:293]: receive_fd(): EOF on 12
>>>   9(21196) DEBUG: <core> [tcp_main.c:3537]: handle_ser_child(): DBG: handle_ser_child: dead child 5, pid 21192 (shutting down?)
>>>   9(21196) DEBUG: <core> [io_wait.h:610]: io_watch_del(): DBG: io_watch_del (0x9e70a0, 12, -1, 0x0) fd_no=4 called
>>>   9(21196) CRITICAL: <core> [pass_fd.c:293]: receive_fd(): EOF on 13
>>>   9(21196) DEBUG: <core> [tcp_main.c:3537]: handle_ser_child(): DBG: handle_ser_child: dead child 6, pid 21193 (shutting down?)
>>>   9(21196) DEBUG: <core> [io_wait.h:610]: io_watch_del(): DBG: io_watch_del (0x9e70a0, 13, -1, 0x0) fd_no=3 called
>>>   8(21195) INFO: db_text [dbt_base.c:99]: dbt_init(): using database at: /usr/local/etc/kamailio/dbtext 8(21195) DEBUG: db_text [dbt_lib.c:129]: dbt_cache_get_db(): looking for db /usr/local/etc/kamailio/dbtext!
>>>   8(21195) DEBUG: db_text [dbt_lib.c:139]: dbt_cache_get_db(): db already cached!
>>>   8(21195) DEBUG: <core> [sruid.c:101]: sruid_init(): root for sruid is [ulcx-5555c137-52cb-] (0 / 19)
>>>   8(21195) DEBUG: <core> [sr_module.c:920]: init_mod_child(): DEBUG: init_mod_child (-2): acc
>>>   8(21195) DEBUG: <core> [sr_module.c:920]: init_mod_child(): DEBUG: init_mod_child (-2): auth_db
>>>   8(21195) INFO: db_text [dbt_base.c:99]: dbt_init(): using database at: /usr/local/etc/kamailio/dbtext 8(21195) DEBUG: db_text [dbt_lib.c:129]: dbt_cache_get_db(): looking for db /usr/local/etc/kamailio/dbtext!
>>>   8(21195) DEBUG: db_text [dbt_lib.c:139]: dbt_cache_get_db(): db already cached!
>>>   8(21195) DEBUG: <core> [sr_module.c:920]: init_mod_child(): DEBUG: init_mod_child (-2): debugger
>>>   8(21195) DEBUG: debugger [debugger_mod.c:179]: child_init(): rank is (-2)
>>>   8(21195) DEBUG: ctl [ctl.c:325]: mod_child(): ctl: mod_child(0), fork_process=0, csl=0x2682080
>>>   8(21195) DEBUG: ctl [ctl.c:332]: mod_child(): ctl: 0 io_listen_loop(1, 0x2682080)
>>>   8(21195) INFO: ctl [io_listener.c:225]: io_listen_loop(): io_listen_loop:  using epoll_lt io watch method (config)
>>>   8(21195) DEBUG: ctl [io_listener.c:257]: io_listen_loop(): io_listen_loop: adding socket 4, type 2, transport 3 (/tmp/kamailio_ctl)
>>>   8(21195) DEBUG: ctl [../../io_wait.h:388]: io_watch_add(): DBG: io_watch_add(0x7f5aaf2a36c0, 4, 2, 0x2682080), fd_no=0
>>>
>>>  ---------------------------------------------
>>>
>>>  cd /usr/local/etc/kamailio
>>>  mkdir dbtext
>>>  cd dbtext
>>>
>>>  ---------------------------------------------
>>>
>>>  cat > /usr/local/etc/kamailio/dbtext/version
>>>
>>>  table_name(str) table_version(int)
>>>  subscriber:6
>>>  location:6
>>>  aliases:6
>>>
>>>  ---------------------------------------------
>>>
>>>  cat > /usr/local/etc/kamailio/dbtext/location
>>>
>>>  username(str) contact(str) expires(int) q(double) callid(str) cseq(int)
>>>
>>>  ---------------------------------------------
>>>
>>>  cat > /usr/local/etc/kamailio/dbtext/subscriber
>>>
>>>  username(str) password(str) ha1(str) domain(str) ha1b(str)
>>>  testuser:testuser:xxx:10.1.1.5:xxx
>>>
>>>  ---------------------------------------------
>>>
>>>  #!define DBURL "text:///usr/local/etc/kamailio/dbtext"
>>>  #!endif
>>>
>>>  ---------------------------------------------
>>>
>>>  # ----- usrloc params -----
>>>  /* enable DB persistency for location entries */
>>>  #!ifdef WITH_USRLOCDB
>>>  modparam("usrloc", "db_url", DBURL)
>>>  modparam("usrloc", "db_mode", 2)
>>>  modparam("usrloc", "use_domain", MULTIDOMAIN)
>>>  #!endif
>>>
>>>  # ----- auth_db params -----
>>>  #!ifdef WITH_AUTH
>>>  modparam("auth_db", "db_url", DBURL)
>>>  modparam("auth_db", "calculate_ha1", yes)
>>>  modparam("auth_db", "password_column", "password")
>>>  modparam("auth_db", "load_credentials", "")
>>>  modparam("auth_db", "use_domain", MULTIDOMAIN)
>>>
>>>  ---------------------------------------------
>>>
>>>  _______________________________________________
>>>  SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>>  sr-users at lists.sip-router.org
>>>  http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>> --
>> Daniel-Constantin Mierla
>> http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>> Kamailio World Conference, May 27-29, 2015
>> Berlin, Germany - http://www.kamailioworld.com
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio World Conference, May 27-29, 2015
Berlin, Germany - http://www.kamailioworld.com




More information about the sr-users mailing list