[OpenSIPS-Users] How to avoid increasingly memory comsuption with AVPs?

Liviu Chircu liviu at opensips.org
Fri Apr 15 16:20:33 CEST 2016


Hi Rodrigo,

That's actually PKG memory, so you should fine tune the "-M" parameter 
according to your data and any instructions found in the SQLite module.

As a side note, newer versions of OpenSIPS (2.2+) will properly indicate 
which type of memory you ran out of, so troubleshooting memory issues 
will become easier if you do the upgrade.

Liviu Chircu
OpenSIPS Developer
http://www.opensips-solutions.com

On 15.04.2016 16:50, Rodrigo Pimenta Carvalho wrote:
>
>
> Hi.
>
>
> After a stress test with my OpenSIPS and few user agent clients 
> on-line, just sending SIP REGISTER messages (1 at each minute), not 
> making calls, I saw this log:
>
>
>
> Apr 15 10:09:20 [20441] WARNING:core:fm_malloc: Not enough free 
> memory, will attempt defragmentation
> Apr 15 10:09:20 [20441] ERROR:db_sqlite:db_sqlite_allocate_rows: no 
> memory left
> Apr 15 10:09:20 [20441] ERROR:db_sqlite:db_sqlite_convert_rows: no 
> private memory left
> Apr 15 10:09:20 [20441] ERROR:db_sqlite:db_sqlite_convert_result: 
> error while converting rows
> Apr 15 10:09:20 [20441] ERROR:db_sqlite:db_sqlite_store_result: error 
> while converting result
> Apr 15 10:09:20 [20441] ERROR:avpops:db_query_avp: raw_query failed: 
> db0(usr_preferences) select Value from GeneralConfigurations ...
>
>
> So, I suspect that I have codified something wrong in my opensips.cfg 
> file.
>
> More precisely, I have used some AVPs and I'm note sure if such use is 
> correct or if it is the cause of increasingly memory consumption.
>
> For example, I have codified somethings like this:
>
>
>
> 1        if($avp(I_A) == NULL){
>                  avp_db_query("select Value from GeneralConfigurations 
> where Attribute = 'CONFIGURATION_INTERCOM_A_NAME'", "$avp(I_A)");
>         }
>
>
> .
>
> .
>
> .
>
>
> 2        if ($rU==$avp(M_TU)){
>            $rU = $avp(M_T);
>         }
>
> .
>
> .
>
> .
>
>
> 3    if (nat_uac_test("34")) {
>         if (is_method("REGISTER")) {
>             fix_nated_register();
>             setbflag(NAT);
>             $avp(attr) = "in_another_network";
>         } else {
>             fix_nated_contact();
>             setflag(NAT);
>         }
>     }
>
>
> .
>
> .
>
> .
>
> 4                $avp(ContatoRegister) = $(ct.fields(uri){s.select,0,;});
>                   if($fn != NULL){
>                      avp_db_query("UPDATE location SET 
> callerName='$fn'  where contact like '$avp(ContatoRegister)%'");
>                 }
>                 $avp(ContatoRegister) = NULL;
>
>
>
>
> Could some of the 4 piece of codes above causes some increasingly 
> memory consumption?
>
>
> Any hint will be very helpful!
>
>
> Best regards.
>
>
>
> RODRIGO PIMENTA CARVALHO
> Inatel Competence Center
> Software
> Ph: +55 35 3471 9200 RAMAL 979
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20160415/88a1801f/attachment.htm>


More information about the Users mailing list