[OpenSIPS-Users] Memory free problem
Bogdan-Andrei Iancu
bogdan at opensips.org
Mon Nov 21 12:25:22 CET 2016
Denis, please try this and see if the PRACK gets routed correctly (and
you should also get rid of the warnings and memory issues).
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
On 21.11.2016 13:22, Denis wrote:
> Re: [OpenSIPS-Users] Memory free problem Hello, Bogdan!
>
> Yes, sure, i will test it.
>
> Server:: OpenSIPS (2.2.1 (x86_64/linux))
>
> mailto:denis7979 at mail.ru
>
>
> Hi Denis,
>
> Yes, I see you use Topo Hiding, and as the PRACK is after the 200 OK +
> ACK, OpenSIPS dialog module does not match the PRACK -> it sticks to
> the OpenSIPS IP and loops on it.
>
> If I send you a small patch (to allow PRACK inside dialog) could you
> test it ?
>
> Regards,
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
> On 21.11.2016 10:24, Denis wrote:
>
> Re: [OpenSIPS-Users] Memory free problem Hello, Bogdan!
>
> Yes, the ngrep shows that PRACK has been received, but not sent to
> dest SIP UA.
> The question is, why "is looping big time on your OpenSIPS"?
>
> Here you can find SIP log of one of the call, mentioned early, with
> callid '4gk2hpk433lgdt1d6ys7ifkwd
> <mailto:4gk2hpk433lgdt1d6ys7ifkwd at 1.1.1.1>'
> https://cloud.mail.ru/public/BvpZ/SJHLQmqEZ
>
> In the log:
> 1.1.1.1 - Caller
> 2.2.2.2 - Opensips
> 3.3.3.3 - Callee
>
> Top hiding has been applied for this call.
>
> Thank you.
>
> mailto:denis7979 at mail.ru
>
>
> Hi Denis,
>
> It looks to me you have a PRACK request that is looping big time on
> your OpenSIPS, consuming CPU and memory - see how often the warning
> with bogus state appears. Check the routing for PRACK.
>
> Regards,
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
> On 18.11.2016 11:43, Denis wrote:
>
> Re: [OpenSIPS-Users] Memory free problem Hello, Bogdan!
>
> The log you can find here
> https://cloud.mail.ru/public/84c1/Fw9VGe2J9
>
> mailto:denis7979 at mail.ru
>
>
> Hi Denis,
>
> I do not think they are related. The warnings report some traffic
> anomalies - a PRACK request for a confirmed dialog (with 200 OK).
>
> On the memory part, if the log is correct, it says you have 180M free.
> What are the ERROR line just after that log ? I want to see which was
> the module trying to allocate memory.
>
> Regards,
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
> On 17.11.2016 09:11, Denis wrote:
>
> Memory free problem Hello!
>
> Today i have a temporary problem with out of free memory (about 4
> minutes).
> Unfortunately, i noticed the problem when everything became fine, so i
> didn`t make standard procedure of detecting problems with memory which
> has been described in documentation.
>
> In syslog i see such sequence of events.
>
> Before the first message about out of free memory
>
> "ERROR:core:fm_malloc: not enough free shm memory (180803792 bytes
> left), please increase the "-m" command line parameter!"
>
> i see many messages
>
> "WARNING:dialog:log_next_state_dlg: bogus event 5 in state 4 for dlg
> 0x7f1c531c95f0 [3855:951170645] with clid
> '4gk2hpk433lgdt1d6ys7ifkwd at 1.1.1.1
> <mailto:4gk2hpk433lgdt1d6ys7ifkwd at 1.1.1.1>' and tags '96x8v2xkj9of92j'
> '332693C-EF5'"
> "WARNING:dialog:log_next_state_dlg: bogus event 5 in state 4 for dlg
> 0x7f1c4735d130 [4072:1150064691] with clid
> 'eht08t1eovzlqahle6xhfeiln at 2.2.2.2
> <mailto:eht08t1eovzlqahle6xhfeiln at 2.2.2.2>' and tags '1czw3nbhw632pzn'
> '3326728-1DC1'"
>
> dialing with two callid.
>
> The question is, can such Warning influence on shm. allocation?
>
> Thank you for any help.
>
> mailto:denis7979 at mail.ru
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org <mailto: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/20161121/f32722b8/attachment-0001.htm>
-------------- next part --------------
diff --git a/modules/dialog/dlg_hash.c b/modules/dialog/dlg_hash.c
index d8c8be1..92b9844 100644
--- a/modules/dialog/dlg_hash.c
+++ b/modules/dialog/dlg_hash.c
@@ -1004,6 +1004,7 @@ void next_state_dlg(struct dlg_cell *dlg, int event, int dir, int *old_state,
switch (dlg->state) {
case DLG_STATE_EARLY:
case DLG_STATE_CONFIRMED_NA:
+ case DLG_STATE_CONFIRMED:
break;
default:
log_next_state_dlg(event, dlg);
More information about the Users
mailing list