We are buidling some kind of our own rtpengine dispatcher based on our own algorithm using kemi Lua.
In one of the functions we are calling:
`local reqBody = function(command, params)
return json.encode({
jsonrpc = "2.0",
method = "rtpengine." .. command,
params = params
})
end
KSR.jsonrpcs.exec(reqBody("show", { "all" }))
local data = json.decode(KSR.pv.get("$jsonrpl(body)"))
`
And watching free_mem decrasing in case of every call of this function
If we are commenting this - nothing happens
P.S. We are doing the same for the dispatcher module but did not find memory leak for it:
`local reqBody = function (command,params)
return json.encode( {
jsonrpc = "2.0",
method = "dispatcher." ..command,
params = params
} )
end
KSR.jsonrpcs.exec(reqBody( "list" ) )
local data = json.decode( KSR.pv.get("$jsonrpl(body)") )
`
To reproduce this issue suppose will be enough to call code above
test results for 10000 calls total/300 per second (sipp based)
memory stats on the start
shmem:fragments = 2 |
shmem:free_size = 63131408
shmem:max_used_size = 3994704
shmem:real_used_size = 3977456
shmem:total_size = 67108864
shmem:used_size = 3205144
memory stats on the end
shmem:fragments = 5 |
shmem:free_size = 60106232
shmem:max_used_size = 7019952
shmem:real_used_size = 7002632
shmem:total_size = 67108864
shmem:used_size = 4150008
kamailio -v
version: kamailio 5.1.6 (x86_64/linux) 7d1964
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
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: 7d1964
compiled on 03:23:23 Oct 5 2018 with gcc 6.3.0
1 machine: SMP Debian 4.9.110-3+deb9u6 (2018-10-08) x86_64 GNU/Linux
2 machine: SMP Debian 4.9.110-3+deb9u2 (2018-08-13) x86_64 GNU/Linux
If will need any additional info just let me know
P.S. We also tried to find what can give this behavior on the rtpengine.c but didn't figured out yet
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.