Hi!
Kamailio 1.3.4: "kamctl ul monitor" causes:
ERROR: <core> [attr.c:80]: no more pkg mem (21) ERROR: mi_fifo [fifo_fnc.c:513]: command (ul_dump) processing failed
There are ~ 2000 entries in location table. Default PKG size is used.
I remember there were some similar reports recently, but couldn't find the relevant threads.
Any hints for the cause of this problem and workarounds?
Thanks Klaus
On 10/06/2011 11:52 AM, Klaus Darilion wrote:
Hello,
You can either increase the PKG size, or (what we do), uncomment a line in sip-router/lib/kmi/Makefile that enables system malloc instead of pkg_malloc for fifo commands.
## uncomment next line for using system malloc with MI #DEFS+= -DMI_SYSTEM_MALLOC
Cheers, Marius
Hello,
On 10/6/11 10:52 AM, Klaus Darilion wrote:
you can turn on usage of system memory manager for MI, see lib/kmi/Makefile
Maybe we should make it default. With the size of the config files today, is not much left for other pkg operations, specially dumping content via MI.
Cheers, Daniel
Hello,
i would vote for dynamic allocation too. These days i had to allocate way more than default 4MB of pkg mem. Does anyone who used heavy MI loaded system with MI_SYSTEM_MALLOC compiled could give us feedback on how this feature is stable currently?
best regards,
Antanas Masevicius
On 2011.10.06 14:04, Daniel-Constantin Mierla wrote:
On 10/06/2011 02:12 PM, Antanas Masevicius wrote:
Hello,
Sorry, i have read kamailio 3.1.4 not 1.3.4. The MI_SYSTEM_MALLOC is 3.x only so this is not an options. As I've said in the previous mail, we are using it for quite a while now, no problems what so ever
Marius
On 06.10.2011 13:04, Daniel-Constantin Mierla wrote:
What exactly causes the problem: the dump operation, MI or FIFO?
Nowadays there are many other interface choices (RPC over FIFO, Unix ....). Is it possible to execute the commands (ul_dump ...) via other interface bypassing the MI_FIFO limitations?
Thanks Klaus
Hello,
On 10/6/11 2:24 PM, Klaus Darilion wrote:
by design, the MI API build an internal tree with the output, then writes it to fifo, udp socket, etc... so it is not related to fifo, but how mi stuff works internally. RPC works a bit different, by writing to a buffer, whose size can be controlled in case of ctl module which provides the transport layers such as fifo, udp or tcp sockets.
Cheers, Daniel