Thanks you Daniel
We removed perl code calls from kamailio configs and issue is resolved.
Very help full your suggestion.
Sergey
ср, 18 июл. 2018 г. в 14:37, Daniel-Constantin Mierla <miconda(a)gmail.com>om>:
Hello,
On 18.07.18 06:41, Sergey Safarov wrote:
One my server with perl external script time to time is stopping
processing SIP messages. Perl script make calls to kamailio database on
mysql.
I have found this in logs
DEBUG: <core> [core/io_wait.h:380]: io_watch_add(): DBG:
io_watch_add(0x56427eb40c40, 495, 2, 0x7f1a9f9ba408), fd_no=33
DEBUG: <core> [core/io_wait.h:602]: io_watch_del(): DBG: io_watch_del
(0x56427eb40c40, 495, -1, 0x0) fd_no=34 called
DEBUG: <core> [core/tcp_main.c:4196]: handle_tcpconn_ev(): sending to
child, events 1
DEBUG: <core> [core/tcp_main.c:3871]: send2child(): WARNING: no free tcp
receiver, connection passed to the least busy one (56)
DEBUG: <core> [core/tcp_main.c:3875]: send2child(): selected tcp worker 4
20(24) for activity on [tcp:0.0.0.0:81], 0x7f1a9f9ba408
And no next messages.
How get info what is load on "tcp receiver". This host in dev mode and
handles not more 5 devices.
this messages are printed when all tcp workers are assigned to handle
traffic on a tcp connection. They are harmless if there is a lot of traffic
on many tcp connections, but if you say the traffic is low, then the tcp
workers are blocked in some operations, likely the database query.
You can use benchmark module or play with latency* core parameters in
order to detect what action in config takes very long time to execute.
You can also increase the value for tcp_children global parameter.
Cheers,
Daniel
--
Daniel-Constantin Mierla --
www.asipto.comwww.twitter.com/miconda --
www.linkedin.com/in/miconda
Kamailio World Conference --
www.kamailioworld.com