[SR-Users] app_python module fails with "AttributeError: init_modules() has failed"

Konstantin M. evilzluk at gmail.com
Fri Jun 14 14:10:23 CEST 2013


Ok, I can confirm, something is not good there. Not sure what exactly but I
will look at this as soon as possible and push a fix if needs.


2013/6/13 phil lemelin <phil.lemelin at gmail.com>

> Good day people,
>
> I downloaded the source code for Kamailio on my CentOS 6 server and did
> the following :
>
> Modified the modules.ls to add db_mysql and app_python.
> Did the make all
> Did the make install
>
> Copied the configuration and had the same result.
>
> Seeing this, I installed myself a copy of ubuntu 12.10  and modified the
> modules.ls to add db_mysql and app_python , did the make all and make
> install.
> I COPIED the configuration file from my CentOS 6 server and started the
> application.
>
> It works on the ubuntu 12.10.
>
> I'm now wondering if there is a dependency missing when using CentOS 6
> installation. I did run kamailio with strace but could not see anything
> obvious.
>
> Any suggestions ?
>
>
> On Thu, Jun 13, 2013 at 10:58 AM, phil lemelin <phil.lemelin at gmail.com>wrote:
>
>> As requested, compressed core dump.
>>
>>
>> On Thu, Jun 13, 2013 at 10:51 AM, Konstantin M. <evilzluk at gmail.com>wrote:
>>
>>> Could you please compress and attach core file.
>>>
>>>
>>> 2013/6/13 phil lemelin <phil.lemelin at gmail.com>
>>>
>>>> Ok, I disabled WITH_MYSQL and left loadmodule "app_python.so" at the
>>>> end of all the other loadmodule directive and here is the output:
>>>>
>>>> 0(3572) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3572) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: mi_fifo
>>>>  0(3572) DEBUG: mi_fifo [mi_fifo.c:124]: testing mi_fifo existance ...
>>>>  0(3572) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: kex
>>>>  0(3572) DEBUG: <core> [sruid.c:100]: root for sruid is
>>>> [srid-51b9d8fb-df4-] (0 / 18)
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <uptime> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <uptime> for
>>>> module core
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <version> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <version> for
>>>> module core
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <pwd> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <pwd> for
>>>> module core
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <arg> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <arg> for
>>>> module core
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <which> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <which> for
>>>> module core
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <kill> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <kill> for
>>>> module core
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <ps> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <ps> for
>>>> module core
>>>>  0(3572) ERROR: <core> [mi.c:159]: command <debug> already registered
>>>>  0(3572) ERROR: <core> [mi.c:94]: failed to register cmd <debug> for
>>>> module core
>>>>  0(3572) ERROR: <core> [kstats_wrapper.c:73]: counter core.rcv_requests
>>>> already registered
>>>>  0(3572) ERROR: <core> [kstats_wrapper.c:99]: failed to add statistic
>>>> core.rcv_requests
>>>>  0(3572) ERROR: kex [core_stats.c:179]: failed to register core
>>>> statistics
>>>>  0(3572) ERROR: <core> [sr_module.c:939]: init_mod(): Error while
>>>> initializing module kex (/usr/lib64/kamailio/modules/kex.so)
>>>>  0(3572) ERROR: app_python [python_support.c:132]: mod_init: Unhandled
>>>> exception in the Python code:
>>>> AttributeError: init_modules() has failed
>>>>  0(3572) ERROR: <core> [sr_module.c:939]: init_mod(): Error while
>>>> initializing module app_python (/usr/lib64/kamailio/modules/app_python.so)
>>>>
>>>> ERROR: error while initializing modules
>>>>
>>>>
>>>> Now, seeing that key.so module was now failing, which I never saw
>>>> before, I put the loadmodule for python ABOVE mi_fifo and key and here is
>>>> the result:
>>>>
>>>>  *snip* thousands of line of the same message
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>>  0(3595) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: app_python
>>>> Segmentation fault (core dumped)
>>>>
>>>>
>>>> Any ideas at this point ?
>>>>
>>>> Best regards,
>>>>
>>>>
>>>>
>>>>
>>>> On Thu, Jun 13, 2013 at 10:27 AM, Konstantin M. <evilzluk at gmail.com>wrote:
>>>>
>>>>> Yes, you're correct. Default values are:
>>>>>
>>>>> modparam("app_python", "script_name",
>>>>> "/usr/local/etc/sip-router/handler.py"
>>>>> modparam("app_python", "mod_init_function", "mod_init")
>>>>> modparam("app_python", "child_init_method", "child_init")
>>>>>
>>>>> But app_python is nothing related to db_mysql.
>>>>>
>>>>> Anyways, see my test:
>>>>>
>>>>> root at raspberrypi:/opt/kamailio# grep python etc/kamailio/kamailio.cfg
>>>>> loadmodule "app_python.so"
>>>>>
>>>>> root at raspberrypi:/opt/kamailio# cat
>>>>> /usr/local/etc/sip-router/handler.py
>>>>>
>>>>>
>>>>> class Handler(object):
>>>>>     def child_init(self, y):
>>>>>         return 0
>>>>>
>>>>> def mod_init():
>>>>>     return Handler()
>>>>>
>>>>>
>>>>> root at raspberrypi:/opt/kamailio# ./start.sh
>>>>> loading modules under
>>>>> /usr/local/lib/kamailio/modules_k/:/opt/kamailio/lib/kamailio/modules/
>>>>>  0(4536) NOTICE: <core> [sr_module.c:627]:
>>>>> /opt/kamailio/lib/kamailio/modules/app_python.so: exports dlflags interface
>>>>> is deprecated and it will not be supported in newer versions; consider
>>>>> using mod_register() instead
>>>>>  0(4536) WARNING: <core> [socket_info.c:1407]: WARNING: fix_hostname:
>>>>> could not rev. resolve 0.0.0.0
>>>>> Listening on
>>>>>              udp: 0.0.0.0:5062
>>>>> Aliases:
>>>>>
>>>>> WARNING: no fork mode
>>>>>  0(4536) INFO: rr [../outbound/api.h:49]: Failed to import bind_ob
>>>>>  0(4536) INFO: rr [rr_mod.c:159]: outbound module not available
>>>>>  0(4536) INFO: usrloc [hslot.c:53]: locks array size 512
>>>>>  0(4536) INFO: <core> [udp_server.c:179]: INFO: udp_init: SO_RCVBUF is
>>>>> initially 163840
>>>>>  0(4536) INFO: <core> [udp_server.c:230]: INFO: udp_init: SO_RCVBUF is
>>>>> finally 327680
>>>>>  4(4540) INFO: ctl [io_listener.c:221]: io_listen_loop: using epoll_lt
>>>>> as the io watch method (auto detected)
>>>>>
>>>>>
>>>>> So nothing fails there.
>>>>>
>>>>>
>>>>>
>>>>> 2013/6/13 phil lemelin <phil.lemelin at gmail.com>
>>>>>
>>>>>> If i remove '  loadmodule "app_python.so"   ',  Kamailio starts just
>>>>>> fine. This only appears when the app_python module is loaded.
>>>>>>
>>>>>> Is there anything else than mysql to enable when using the app_python
>>>>>> ?
>>>>>>
>>>>>> Here is the ouput when I only enable mysql. The module is loaded and
>>>>>> there are no issues...
>>>>>>
>>>>>> *snip*
>>>>>> ^[[0;39;49m 0(3113) DEBUG: <core> [cfg/cfg.c:178]: DEBUG:
>>>>>> register_cfg_def(): new config group has been registered: 'core' (num=49,
>>>>>> size=196)
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [cfg/cfg.c:178]: DEBUG:
>>>>>> register_cfg_def(): new config group has been registered: 'tcp' (num=26,
>>>>>> size=104)
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [timer.c:272]:
>>>>>> init_timer: starting with *ticks=195301735
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [timer.c:314]:
>>>>>> init_timer: timer_list between 0x7fa54af1ba20 and 0x7fa54af5fa20
>>>>>> ^[[0;39;49m^[[0;36;49m 0(3113) INFO: <core> [tcp_main.c:4846]:
>>>>>> init_tcp: using epoll_lt as the io watch method (auto detected)
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [daemonize.c:575]: core
>>>>>> dump limits set to 18446744073709551615
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [sr_module.c:935]:
>>>>>> DEBUG: init_mod: db_mysql
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: db_mysql [km_db_mysql.c:92]:
>>>>>> MySQL client version is 5.1.69
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [sr_module.c:935]:
>>>>>> DEBUG: init_mod: mi_fifo
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: mi_fifo [mi_fifo.c:124]:
>>>>>> testing mi_fifo existance ...
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [sr_module.c:935]:
>>>>>> DEBUG: init_mod: kex
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [sruid.c:100]: root for
>>>>>> sruid is [srid-51b9d186-c29-] (0 / 18)
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [sr_module.c:935]:
>>>>>> DEBUG: init_mod: corex
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: <core> [sr_module.c:935]:
>>>>>> DEBUG: init_mod: tm
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: tm [tm.c:751]: TM - (sizeof
>>>>>> cell=4872, sip_msg=1624) initializing...
>>>>>> ^[[0;39;49m^[[0;39;49m 0(3113) DEBUG: tm [callid.c:105]: Call-ID
>>>>>> initialization: '2c32dacb59169bda'
>>>>>> *snip*
>>>>>>
>>>>>>
>>>>>> On Thu, Jun 13, 2013 at 9:48 AM, Andrew Mortensen <
>>>>>> admorten at isc.upenn.edu> wrote:
>>>>>>
>>>>>>>
>>>>>>> On Jun 13, 2013, at 7:23 AM, phil lemelin <phil.lemelin at gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>> > Good morning,
>>>>>>> >
>>>>>>> > I'm trying to use the app_python module with Kamailio but i'm
>>>>>>> unable to even reach a point where it loads my python module.
>>>>>>>
>>>>>>> It's actually failing even before that. It's unable to load the
>>>>>>> db_mysql module:
>>>>>>>
>>>>>>> > 0(751) DEBUG: <core> [sr_module.c:935]: DEBUG: init_mod: db_mysql
>>>>>>> >  0(751) ERROR: <core> [sr_module.c:939]: init_mod(): Error while
>>>>>>> initializing module db_mysql (/usr/lib64/kamailio/modules/db_mysql.so)
>>>>>>>
>>>>>>> Fix that first.
>>>>>>>
>>>>>>> andrew
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> 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
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Philippe-Alexandre Lemelin
>>>>>>
>>>>>> _______________________________________________
>>>>>> 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
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> 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
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Philippe-Alexandre Lemelin
>>>>
>>>> _______________________________________________
>>>> 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
>>>>
>>>>
>>>
>>> _______________________________________________
>>> 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
>>>
>>>
>>
>>
>> --
>> Philippe-Alexandre Lemelin
>>
>
>
>
> --
> Philippe-Alexandre Lemelin
>
> _______________________________________________
> 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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20130614/93524985/attachment-0001.html>


More information about the sr-users mailing list