<div dir="ltr">Greetings Again List. <div><br></div><div>After being unable to use ndb_cassandra with kamailio I tried to use app_python. Below is relevant configuration.</div><div><div><br></div><div>version: kamailio 4.4.2 (x86_64/linux) 892ad6</div><div>flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES</div><div>ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB</div><div>poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.</div><div>id: 892ad6</div><div>compiled on 07:50:03 Jul  1 2016 with gcc 4.9.2</div></div><div><br></div><div><br></div><div><br></div><div>modparam("app_python", "script_name", "/usr/local/kamailio/etc/kamailio/handler.py")<br></div><div><br></div><div>request_route {<br></div><div>       .....</div><div><div>        python_exec("handler");</div></div><div>  .....</div><div>}</div><div><br></div><div>And i am using example provided in app_python module. <b>But i soon as i import Cassandra driver in script</b>. Kamailio terminate with there logs. <br></div><div><br></div><div><div>Jul  1 19:57:19 debian ./kamailio[8643]: INFO: app_python [mod_Logger.c:170]: logger_LM_INFO(): test.child_init(20)</div><div>Jul  1 19:57:19 debian ./kamailio[8642]: INFO: app_python [mod_Logger.c:170]: logger_LM_INFO(): test.child_init(19)</div><div>Jul  1 19:57:19 debian ./kamailio[8648]: DEBUG: <core> [sr_module.c:920]: init_mod_child(): rank -4: tmx</div><div>Jul  1 19:57:19 debian ./kamailio[8648]: DEBUG: tmx [tmx_mod.c:275]: child_init(): rank is (-4)</div><div>Jul  1 19:57:19 debian ./kamailio[8648]: DEBUG: <core> [sr_module.c:920]: init_mod_child(): rank -4: sl</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: INFO: <core> [main.c:754]: handle_sigs(): terminating due to SIGCHLD</div><div>Jul  1 19:57:19 debian ./kamailio[8642]: DEBUG: <core> [local_timer.c:61]: init_local_timer(): timer_list between 0xa78988 and 0xabc988</div><div>Jul  1 19:57:19 debian ./kamailio[8642]: DEBUG: <core> [io_wait.h:376]: io_watch_add(): DBG: io_watch_add(0xa787c0, 40, 1, (nil)), fd_no=0</div><div>Jul  1 19:57:19 debian ./kamailio[8644]: DEBUG: <core> [sr_module.c:920]: init_mod_child(): rank 21: kex</div><div>Jul  1 19:57:19 debian ./kamailio[8645]: DEBUG: kex [kex_mod.c:161]: child_init(): rank is (22)</div><div>Jul  1 19:57:19 debian ./kamailio[8640]: DEBUG: kex [kex_mod.c:161]: child_init(): rank is (17)</div><div>Jul  1 19:57:19 debian ./kamailio[8639]: DEBUG: mi_rpc [mi_rpc_mod.c:104]: child_init(): initializing child[-2] for rpc handling</div><div>Jul  1 19:57:19 debian ./kamailio[8646]: DEBUG: <core> [sr_module.c:920]: init_mod_child(): rank 23: tm</div><div>Jul  1 19:57:19 debian ./kamailio[8641]: DEBUG: <core> [sr_module.c:920]: init_mod_child(): rank 18: corex</div><div>Jul  1 19:57:19 debian ./kamailio[8635]: INFO: app_python [mod_Logger.c:170]: logger_LM_INFO(): test.child_init(-1)</div><div>Jul  1 19:57:19 debian ./kamailio[8648]: DEBUG: <core> [sr_module.c:920]: init_mod_child(): rank -4: usrloc</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: <core> [main.c:756]: handle_sigs(): terminating due to SIGCHLD</div><div>Jul  1 19:57:19 debian ./kamailio[8636]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8621]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8620]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8625]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8623]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8638]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8624]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8632]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8647]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8633]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8637]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8619]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8622]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8626]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8627]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8628]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8629]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div></div><div><div>Jul  1 19:57:19 debian ./kamailio[8642]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8630]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8635]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8631]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8634]: INFO: <core> [main.c:809]: sig_usr(): signal 15 received</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: tm [t_funcs.c:86]: tm_shutdown(): DEBUG: tm_shutdown : start</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: tm [t_funcs.c:89]: tm_shutdown(): DEBUG: tm_shutdown : emptying hash table</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: tm [t_funcs.c:91]: tm_shutdown(): DEBUG: tm_shutdown : removing semaphores</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: tm [t_funcs.c:93]: tm_shutdown(): DEBUG: tm_shutdown : destroying tmcb lists</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: tm [t_funcs.c:96]: tm_shutdown(): DEBUG: tm_shutdown : done</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: INFO: <core> [sctp_core.c:53]: sctp_core_destroy(): SCTP API not initialized</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: <core> [mem/shm.c:174]: shm_core_lock_destroy(): destroying the shared memory lock</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: <core> [mem/shm.c:266]: shm_destroy_manager(): destroying memory manager: f_malloc</div><div>Jul  1 19:57:19 debian ./kamailio[8616]: DEBUG: <core> [mem/pkg.c:89]: pkg_destroy_manager(): destroying memory manager: f_malloc</div></div><div><br></div><div><br></div><div><br></div><div>I have tried using two different drivers for Cassandra in python but same results. </div><div><br></div><div>I wonder if i import mysql driver kamailio starts perfectly. </div><div><br></div><div>Below it my script. </div><div><br></div><div><br></div><div><div>#!/usr/bin/python</div><div>import sys</div><div>import pymysql</div><div><b>import pycassa</b></div><div>from Router.Logger import LM_ERR</div><div>from Router.Logger import LM_INFO</div><div><br></div><div>class test:</div><div>    def __init__(self):</div><div>        LM_INFO('test.__init__\n')</div><div><br></div><div>    def child_init(self, y):</div><div>        LM_INFO('test.child_init(%d)\n' % y)</div><div>        return 0</div><div><br></div><div>    def handler(self, msg):</div><div>        LM_INFO('test.handler(%s)\n' % (msg.Type))</div><div>        if msg.Type == 'SIP_REQUEST':</div><div>            if msg.Method == 'INVITE':</div><div>                LM_INFO("Re-writing RURI")</div><div>                msg.rewrite_ruri('<a href="http://sip:0022@192.168.2.24:5073">sip:0022@192.168.2.24:5073</a>')</div><div>            LM_INFO('SIP request, method = %s, RURI = %s, From = %s\n' % (msg.Method, msg.RURI, msg.getHeader('from')))</div><div>            LM_INFO('received from %s:%d\n' % msg.src_address)</div><div>        return 1</div><div><br></div><div>def mod_init():</div><div>    return test()</div></div><div><br></div><div><br></div><div>Any help is much appreciated. </div><div><br></div><div>Best Regards, </div><div><br></div><div>Aqs Younas</div></div>