[SR-Users] Problem implementing usrloc via dmq

Aleksandar Sosic alex.sosic at timenet.it
Tue Sep 5 17:09:54 CEST 2017


Hi Charles,

I did solve the problem with

if(is_method("KDMQ")) {
    dmq_handle_message();
}

in the main route and the dmq_usrloc is working now.

I enabled dmq for the dialog also:
modparam("dialog", "enable_dmq", 1)

and the dmq is working between kamailio instances but the call does
not end and the kamailio instance where the call was made crashes.

sr01.evox.it    | 30(38) CRITICAL: <core> [core/pass_fd.c:277]:
receive_fd(): EOF on 24
sr01.evox.it    |  0(8) ALERT: <core> [main.c:742]: handle_sigs():
child process 18 exited by a signal 11
sr01.evox.it    |  0(8) ALERT: <core> [main.c:745]: handle_sigs():
core was generated
sr01.evox.it    |  0(8) INFO: <core> [main.c:768]: handle_sigs():
terminating due to SIGCHLD
sr01.evox.it    |  1(9) INFO: <core> [main.c:823]: sig_usr(): signal 15 received
sr01.evox.it    | 20(28) INFO: <core> [main.c:823]: sig_usr(): signal
15 received
sr01.evox.it    | 11(19) INFO: <core> [main.c:823]: sig_usr(): signal
15 received

I have also done a gdb on the core dump:
root at sr01:/tmp/sr01# gdb /usr/sbin/kamailio ./core
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/sbin/kamailio...(no debugging symbols found)...done.
[New LWP 8]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/sbin/kamailio -f
/etc/kamailio/kamailio.cfg -DD -E -e -w /tmp/sr01'.
Program terminated with signal SIGABRT, Aborted.
#0  0x00007f9403a3f428 in __GI_raise (sig=sig at entry=6) at
../sysdeps/unix/sysv/linux/raise.c:54
54      ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.

But cannot manage to solve the issue now.

NB. I have this order of modules loades:
...
loadmodule "dmq.so"
loadmodule "dmq_usrloc.so"

loadmodule "htable.so"

loadmodule "dialog.so"
...

# ----- dialog params -----
# modparam("dialog", "db_url", DBURL)
modparam("dialog", "default_timeout", 10800)
modparam("dialog", "profiles_with_value", "calllimit")
modparam("dialog", "enable_stats", 1)
modparam("dialog", "db_mode", 0)
modparam("dialog", "dlg_flag", FLT_DLG)
modparam("dialog", "enable_dmq", 1)
...


Do you have any hints?

Thanks in advance,
--
Aleksandar Sosic
mail: alex.sosic at timenet.it
skype: alex.sosic
cell: +385 91 2505 146


On Mon, Sep 4, 2017 at 10:47 AM, Charles Chance
<charles.chance at sipcentric.com> wrote:
> Hello,
>
> Sorry for slow reply.
>
> Can you set debug=4 and send the output from startup through to register,
> for both nodes?
>
> Also the full config would be useful, or at least the default request route
> up to your call to dmq_handle_message().
>
> Cheers,
>
> Charles



More information about the sr-users mailing list