[SR-Users] Dumping Online Users stops at 2000 records

Daniel-Constantin Mierla miconda at gmail.com
Wed Aug 17 14:08:06 CEST 2011


Hello,

On 8/17/11 1:41 PM, Sebastian Damm wrote:
> Hi Henning,
>
> On Wed, Aug 17, 2011 at 11:33 AM, Henning Westerholt 
> <henning.westerholt at 1und1.de <mailto:henning.westerholt at 1und1.de>> wrote:
>
>     On Wednesday 17 August 2011, Sebastian Damm wrote:
>     > we have a script running on our Kamailio servers which dumps all
>     online
>     > users with kamctl ul show, parses it and then sends it to
>     database. (For
>     > explanation, we started doing it this way because we noticed at
>     least with
>     > an older (open)ser release that SER would completely stop
>     working for a
>     > couple of seconds while writing registered users to database every 5
>     > minutes. When dumping it, we don't see any disruption.)
>
>     what about fixing this bug instead of using this workaround? This
>     sounds
>     really inefficient.
>
>
> Actually, piping the output through awk and generating a file for LOAD 
> DATA INFILE" is not too bad. Additionally, we need to have that data 
> in more than one DB, which prevents us from using one of the built-in 
> db modes. We use an own DB mode which reads only on startup and then 
> never touches the DB again.
>
>     I don't think there is a hard limit. Do you see any errors (e.g.
>     memory
>     allocation issues) in the server logs? Another idea, if you're
>     somehow stuck
>     to the old/ buggy version of the server, what about using DB_ONLY
>     mode?
>
>
> I don't see any errors in the log. And actually, that's the only bug 
> left preventing our migration from 1.5 to 3.1. And I'd say, DB_ONLY is 
> not an option, should be a lot less performant than if Kamailio keeps 
> the state in memory (although I haven't benchmarked it).
>
> Other ideas?
not sure what was the default in latest 1.x, maybe MI was using the 
system memory manager. Since location records can need quite some memory 
if there are lot of entries, it may be better to use the system memory 
directly in MI to build the response to the commands.

In 3.1, the option is to edit lib/kmi/Makefile and turn on the define of 
MI_SYSTEM_MALLOC

Then recompile/reinstall and try again. Let us know the results.

As alternative, in 3.1, you can do RPC command with sercmd through ctl 
module in order to dump location records. There you can control the size 
of the buffers used to build the output:

   * 
http://kamailio.org/docs/modules/stable/modules/ctl.html#binrpc_max_body_size

Cheers,
Daniel

-- 
Daniel-Constantin Mierla -- http://www.asipto.com
Kamailio Advanced Training, Oct 10-13, Berlin: http://asipto.com/u/kat
http://linkedin.com/in/miconda -- http://twitter.com/miconda

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20110817/9899cbcd/attachment.htm>


More information about the sr-users mailing list