Hi,
Kamailio crash using Cassandra 1.1.2 during SIP unregister (registering works fine)
The version of Kamailio is the latest GIT version:
version: kamailio 3.4.0-dev3 (x86_64/linux) 10327c flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, 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 4MB poll method support: poll, epoll_lt, epoll_et, sigio_rt, select. id: 10327c compiled on 14:53:11 Aug 22 2012 with gcc 4.6.3
BT of Core :
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `kamailio -ddddd'. Program terminated with signal 11, Segmentation fault. #0 fm_free (qm=0x7fa55daf7010, p=0xd22317971716b6a) at mem/f_malloc.c:527 527 if(unlikely(f->u.nxt_free!=NULL)) { (gdb) bt #0 fm_free (qm=0x7fa55daf7010, p=0xd22317971716b6a) at mem/f_malloc.c:527 #1 0x00007fa55d35ac53 in db_free_columns (_r=0x7fa55db38c30) at db_res.c:86 #2 0x00007fa55d83f87d in db_cassa_query (_h=<optimized out>, _k=0x7fa55adc6aac, _op=<optimized out>, _v=<optimized out>, _c=0x7fff72ef0e30, _n=<optimized out>, _nc=16, _o=0x7fa55afca990, _r=0x7fff72ef0f10) at dbcassa_base.cpp:659 #3 0x00007fa55adb58eb in db_load_urecord (_c=0x7fa55db218d0, _d=0x7fa5576eee38, _aor=0x7fff72ef11b0) at udomain.c:592 #4 0x00007fa55adb93cd in get_urecord (_d=<optimized out>, _aor=0x7fff72ef11b0, _r=0x7fff72ef1200) at udomain.c:1017 #5 0x00007fa55ab91698 in lookup (_m=0x7fa55db40c48, _d=0x7fa5576eee38, _uri=<optimized out>) at lookup.c:156 #6 0x00007fa55ab957f2 in w_lookup (_m=0x7fa55db40c48, _d=0x7fa5576eee38 "\350\355nW\245\177", _uri=<optimized out>) at reg_mod.c:437 #7 0x000000000041c624 in do_action (h=0x7fff72ef17f0, a=0x7fa55db23098, msg=0x7fa55db40c48) at action.c:1153 #8 0x000000000041b493 in run_actions (h=0x7fff72ef17f0, a=0x7fa55db23098, msg=0x7fa55db40c48) at action.c:1646 #9 0x0000000000423a24 in run_actions_safe (h=<optimized out>, a=<optimized out>, msg=<optimized out>) at action.c:1710 #10 0x00000000004d79a0 in rval_get_int (h=0x7fff72ef2790, msg=<optimized out>, i=0x7fff72ef1c30, rv=<optimized out>, cache=<optimized out>) at rvalue.c:920 #11 0x00000000004dc82c in rval_expr_eval_int (h=0x7fff72ef2790, msg=0x7fa55db40c48, res=0x7fff72ef1c30, rve=0x7fa55db23218) at rvalue.c:1914 #12 0x00000000004dc8f9 in rval_expr_eval_int (h=0x7fff72ef2790, msg=0x7fa55db40c48, res=0x7fff72ef20d0, rve=0x7fa55db238e8) at rvalue.c:1922 #13 0x000000000041cb66 in do_action (h=0x7fff72ef2790, a=0x7fa55db26d38, msg=0x7fa55db40c48) at action.c:1123 #14 0x000000000041b493 in run_actions (h=0x7fff72ef2790, a=0x7fa55db26d38, msg=0x7fa55db40c48) at action.c:1646 #15 0x000000000041c7e1 in do_action (h=0x7fff72ef2790, a=0x7fa55db15b38, msg=0x7fa55db40c48) at action.c:763 #16 0x000000000041b493 in run_actions (h=0x7fff72ef2790, a=0x7fa55db118c8, msg=0x7fa55db40c48) at action.c:1646 #17 0x0000000000423ab0 in run_top_route (a=0x7fa55db118c8, msg=0x7fa55db40c48, c=<optimized out>) at action.c:1731 #18 0x00000000004b39ee in receive_msg (buf=<optimized out>, len=<optimized out>, rcv_info=<optimized out>) at receive.c:209 #19 0x000000000054de1a in udp_rcv_loop () at udp_server.c:544 #20 0x0000000000478879 in main_loop () at main.c:1635 #21 0x000000000041b002 in main (argc=<optimized out>, argv=<optimized out>) at main.c:2548
Thanks,
Bou
An update on this issue:
The schema that is used by the cassandra module seems to be missing a few fields, the correct schema for location should be:
************************* callid(string) cflags(int) contact(string) cseq(int) expires(timestamp) flags(int) last_modified(int) methods(int) path(string) q(double) received(string) socket(string) user_agent(string) username(string) ruid(string) instance(string) username contact *************************
The two fields : ruid and instance where missing, please append the documentation. (utils/kamctl/dbcassandra/openser/location)
Thanks,
Bou
From: sr-users-bounces@lists.sip-router.org [mailto:sr-users-bounces@lists.sip-router.org] On Behalf Of Boudewyn Ligthart Sent: 22 August 2012 16:34 To: sr-users@lists.sip-router.org Subject: [SR-Users] Kamailio Crash using Cassandra 1.1.2 during SIP unregister
Hi,
Kamailio crash using Cassandra 1.1.2 during SIP unregister (registering works fine)
The version of Kamailio is the latest GIT version:
version: kamailio 3.4.0-dev3 (x86_64/linux) 10327c flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, 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 4MB poll method support: poll, epoll_lt, epoll_et, sigio_rt, select. id: 10327c compiled on 14:53:11 Aug 22 2012 with gcc 4.6.3
BT of Core :
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `kamailio -ddddd'. Program terminated with signal 11, Segmentation fault. #0 fm_free (qm=0x7fa55daf7010, p=0xd22317971716b6a) at mem/f_malloc.c:527 527 if(unlikely(f->u.nxt_free!=NULL)) { (gdb) bt #0 fm_free (qm=0x7fa55daf7010, p=0xd22317971716b6a) at mem/f_malloc.c:527 #1 0x00007fa55d35ac53 in db_free_columns (_r=0x7fa55db38c30) at db_res.c:86 #2 0x00007fa55d83f87d in db_cassa_query (_h=<optimized out>, _k=0x7fa55adc6aac, _op=<optimized out>, _v=<optimized out>, _c=0x7fff72ef0e30, _n=<optimized out>, _nc=16, _o=0x7fa55afca990, _r=0x7fff72ef0f10) at dbcassa_base.cpp:659 #3 0x00007fa55adb58eb in db_load_urecord (_c=0x7fa55db218d0, _d=0x7fa5576eee38, _aor=0x7fff72ef11b0) at udomain.c:592 #4 0x00007fa55adb93cd in get_urecord (_d=<optimized out>, _aor=0x7fff72ef11b0, _r=0x7fff72ef1200) at udomain.c:1017 #5 0x00007fa55ab91698 in lookup (_m=0x7fa55db40c48, _d=0x7fa5576eee38, _uri=<optimized out>) at lookup.c:156 #6 0x00007fa55ab957f2 in w_lookup (_m=0x7fa55db40c48, _d=0x7fa5576eee38 "\350\355nW\245\177", _uri=<optimized out>) at reg_mod.c:437 #7 0x000000000041c624 in do_action (h=0x7fff72ef17f0, a=0x7fa55db23098, msg=0x7fa55db40c48) at action.c:1153 #8 0x000000000041b493 in run_actions (h=0x7fff72ef17f0, a=0x7fa55db23098, msg=0x7fa55db40c48) at action.c:1646 #9 0x0000000000423a24 in run_actions_safe (h=<optimized out>, a=<optimized out>, msg=<optimized out>) at action.c:1710 #10 0x00000000004d79a0 in rval_get_int (h=0x7fff72ef2790, msg=<optimized out>, i=0x7fff72ef1c30, rv=<optimized out>, cache=<optimized out>) at rvalue.c:920 #11 0x00000000004dc82c in rval_expr_eval_int (h=0x7fff72ef2790, msg=0x7fa55db40c48, res=0x7fff72ef1c30, rve=0x7fa55db23218) at rvalue.c:1914 #12 0x00000000004dc8f9 in rval_expr_eval_int (h=0x7fff72ef2790, msg=0x7fa55db40c48, res=0x7fff72ef20d0, rve=0x7fa55db238e8) at rvalue.c:1922 #13 0x000000000041cb66 in do_action (h=0x7fff72ef2790, a=0x7fa55db26d38, msg=0x7fa55db40c48) at action.c:1123 #14 0x000000000041b493 in run_actions (h=0x7fff72ef2790, a=0x7fa55db26d38, msg=0x7fa55db40c48) at action.c:1646 #15 0x000000000041c7e1 in do_action (h=0x7fff72ef2790, a=0x7fa55db15b38, msg=0x7fa55db40c48) at action.c:763 #16 0x000000000041b493 in run_actions (h=0x7fff72ef2790, a=0x7fa55db118c8, msg=0x7fa55db40c48) at action.c:1646 #17 0x0000000000423ab0 in run_top_route (a=0x7fa55db118c8, msg=0x7fa55db40c48, c=<optimized out>) at action.c:1731 #18 0x00000000004b39ee in receive_msg (buf=<optimized out>, len=<optimized out>, rcv_info=<optimized out>) at receive.c:209 #19 0x000000000054de1a in udp_rcv_loop () at udp_server.c:544 #20 0x0000000000478879 in main_loop () at main.c:1635 #21 0x000000000041b002 in main (argc=<optimized out>, argv=<optimized out>) at main.c:2548
Thanks,
Bou
Hi Bou,
You are right, those columns were added this year and the schema was not updated in the cassandra file also. I have committed the fix for that file. I will investigate also why it crashed in this case, as it shouldn't crash in any case.
Thanks and regards, Anca Vamanu
On 08/24/2012 09:07 PM, Boudewyn Ligthart wrote:
An update on this issue:
The schema that is used by the cassandra module seems to be missing a few fields, the correct schema for location should be:
/callid(string) cflags(int) contact(string) cseq(int) expires(timestamp) flags(int) last_modified(int) methods(int) path(string) q(double) received(string) socket(string) user_agent(string) username(string) ruid(string) instance(string)/
/username/
/contact/
//
The two fields : ruid and instance where missing, please append the documentation. (utils/kamctl/dbcassandra/openser/location)
Thanks,
Bou
**
*From:*sr-users-bounces@lists.sip-router.org [mailto:sr-users-bounces@lists.sip-router.org] *On Behalf Of *Boudewyn Ligthart *Sent:* 22 August 2012 16:34 *To:* sr-users@lists.sip-router.org *Subject:* [SR-Users] Kamailio Crash using Cassandra 1.1.2 during SIP unregister
Hi,
Kamailio crash using Cassandra 1.1.2 during SIP unregister (registering works fine)
The version of Kamailio is the latest GIT version:
/version: kamailio 3.4.0-dev3 (x86_64/linux) 10327c/
/flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, 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 4MB/
/poll method support: poll, epoll_lt, epoll_et, sigio_rt, select./
/id: 10327c/
/compiled on 14:53:11 Aug 22 2012 with gcc 4.6.3/
BT of Core :
/Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1"./
/Core was generated by `kamailio -ddddd'./
/Program terminated with signal 11, Segmentation fault./
/#0 fm_free (qm=0x7fa55daf7010, p=0xd22317971716b6a) at mem/f_malloc.c:527/
/527 if(unlikely(f->u.nxt_free!=NULL)) {/
/(gdb) bt/
/#0 fm_free (qm=0x7fa55daf7010, p=0xd22317971716b6a) at mem/f_malloc.c:527/
/#1 0x00007fa55d35ac53 in db_free_columns (_r=0x7fa55db38c30) at db_res.c:86/
/#2 0x00007fa55d83f87d in db_cassa_query (_h=<optimized out>, _k=0x7fa55adc6aac, _op=<optimized out>, _v=<optimized out>, _c=0x7fff72ef0e30, _n=<optimized out>,/
/_nc=16, _o=0x7fa55afca990, _r=0x7fff72ef0f10) at dbcassa_base.cpp:659/
/#3 0x00007fa55adb58eb in db_load_urecord (_c=0x7fa55db218d0, _d=0x7fa5576eee38, _aor=0x7fff72ef11b0) at udomain.c:592/
/#4 0x00007fa55adb93cd in get_urecord (_d=<optimized out>, _aor=0x7fff72ef11b0, _r=0x7fff72ef1200) at udomain.c:1017/
/#5 0x00007fa55ab91698 in lookup (_m=0x7fa55db40c48, _d=0x7fa5576eee38, _uri=<optimized out>) at lookup.c:156/
/#6 0x00007fa55ab957f2 in w_lookup (_m=0x7fa55db40c48, _d=0x7fa5576eee38 "\350\355nW\245\177", _uri=<optimized out>) at reg_mod.c:437/
/#7 0x000000000041c624 in do_action (h=0x7fff72ef17f0, a=0x7fa55db23098, msg=0x7fa55db40c48) at action.c:1153/
/#8 0x000000000041b493 in run_actions (h=0x7fff72ef17f0, a=0x7fa55db23098, msg=0x7fa55db40c48) at action.c:1646/
/#9 0x0000000000423a24 in run_actions_safe (h=<optimized out>, a=<optimized out>, msg=<optimized out>) at action.c:1710/
/#10 0x00000000004d79a0 in rval_get_int (h=0x7fff72ef2790, msg=<optimized out>, i=0x7fff72ef1c30, rv=<optimized out>, cache=<optimized out>) at rvalue.c:920/
/#11 0x00000000004dc82c in rval_expr_eval_int (h=0x7fff72ef2790, msg=0x7fa55db40c48, res=0x7fff72ef1c30, rve=0x7fa55db23218) at rvalue.c:1914/
/#12 0x00000000004dc8f9 in rval_expr_eval_int (h=0x7fff72ef2790, msg=0x7fa55db40c48, res=0x7fff72ef20d0, rve=0x7fa55db238e8) at rvalue.c:1922/
/#13 0x000000000041cb66 in do_action (h=0x7fff72ef2790, a=0x7fa55db26d38, msg=0x7fa55db40c48) at action.c:1123/
/#14 0x000000000041b493 in run_actions (h=0x7fff72ef2790, a=0x7fa55db26d38, msg=0x7fa55db40c48) at action.c:1646/
/#15 0x000000000041c7e1 in do_action (h=0x7fff72ef2790, a=0x7fa55db15b38, msg=0x7fa55db40c48) at action.c:763/
/#16 0x000000000041b493 in run_actions (h=0x7fff72ef2790, a=0x7fa55db118c8, msg=0x7fa55db40c48) at action.c:1646/
/#17 0x0000000000423ab0 in run_top_route (a=0x7fa55db118c8, msg=0x7fa55db40c48, c=<optimized out>) at action.c:1731/
/#18 0x00000000004b39ee in receive_msg (buf=<optimized out>, len=<optimized out>, rcv_info=<optimized out>) at receive.c:209/
/#19 0x000000000054de1a in udp_rcv_loop () at udp_server.c:544/
/#20 0x0000000000478879 in main_loop () at main.c:1635/
/#21 0x000000000041b002 in main (argc=<optimized out>, argv=<optimized out>) at main.c:2548/
Thanks,
Bou