Hello,
have you tried the suggestion from Charles in the other response? It can help figuring out where the problem resides.
Now, from C point of view, I would need the following output from gdb of the core file:
frame 0
p *reason
frame 1
p *worker
p *current_job
I would also need to know the modparams for dmq and other dmq_* module, plus the list if modules for which you enabled dmq (eg, htable, dialog, presence, ...).
Cheers,
Daniel
Oops,apologize, missed that:
version: kamailio 5.3.3 (x86_64/linux) 44ccb9-dirty
flags: USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, 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
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: 44ccb9 -dirty
compiled on 17:04:55 Apr 17 2020 with gcc 4.9.2
Tried this with version 5.0, 5.2, and now 5.3 same situation..
Thankyou for looking into this,Sammy
On Fri, Apr 24, 2020 at 2:33 AM Daniel-Constantin Mierla <miconda@gmail.com> wrote:
Hello,
you have to provide the version of kamailio for each reported kamailio issue, otherwise is hard to match with the source code. Use 'kamailio -v' to get version details.
Cheers,
Daniel
On 23.04.20 23:36, SamyGo wrote:
Hi,
Is there a way to broadcast KDMQ to the cluster but not expect a reply back !?as far as I've read the source code dmq_bcast_message is exactly like dmq_send_message in a way that it expects a callback to be executed on response i.e expects a reply.
So, the situation I'm facing is I'm broadcasting message to cluster and I do not want a reply back. The following two options result in crash & core dump.
1 - If my script doesn't respond back, by use of dmq_handle_message, it marks the destined servers as "inactive" and stops usrloc sync process which isn't desirable.2 - If I respond back with the dmq_handle_message it crashes the Kamailio which just received this broadcasted message.
Here is how its done in script:
broadcasting message to cluster:dmq_bcast_message("userOnline", "$fu", "text/plain");
Receiving and handling a broadcast message:route[DMQ_HANDLE] {if(!(is_method("KDMQ") || $rm == "KDMQ")) return;
if(is_method("KDMQ") || $rm == "KDMQ"){
if($rU =~ "userOnline"){
//user came online in cluster, resume transactions if-any suspended
$avp(remoteUser) = $rb;
}
dmq_handle_message();
exit;
}
}
Related log lines:Apr 23 21:15:48 kamailio[916]: ALERT: <script>: [da2c1-2f499] ------ DMQ_HANDLE: UserOnline Event Received ------
Apr 23 21:15:48 kamailio[916]: DEBUG: dmq [message.c:53]: ki_dmq_handle_message_rc(): dmq_handle_message [KDMQ sip:userOnline@9.8.7.123:5060]
Apr 23 21:15:48 kamailio[916]: DEBUG: dmq [message.c:66]: ki_dmq_handle_message_rc(): dmq_handle_message peer found: userOnline
Apr 23 21:15:48 kamailio[916]: DEBUG: <core> [core/receive.c:437]: receive_msg(): request-route executed in: 401461 usec
Apr 23 21:15:48 kamailio[935]: DEBUG: dmq [worker.c:87]: worker_loop(): dmq_worker [2 935] lock acquired
and crash/segfault..
Core dump: https://pastebin.com/S7ekCPfF
Any help or pointers to solve this would be really appreciated.
Best Regards,Sammy
_______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users-- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda
-- Daniel-Constantin Mierla -- www.asipto.com www.twitter.com/miconda -- www.linkedin.com/in/miconda