<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<tt>Hi, Mickael!<br>
<br>
This is not entirely true - you can define AVPs with the integer
value 0. Those will have avp->flags == 0 and avp->data == 0.<br>
What I'd do, is to note down the avp->id value of those AVPs
and then try to see their names. To do that, you'd have to look
into the avp_map and avp_map_shm maps to see the corresponding
name for that id. Alternatively you can call in your script the
avp_print() method, which prints all the AVPs for a specific
transaction along with their id and names. Let me know how this
goes.<br>
<br>
Best regards,</tt>
<pre class="moz-signature" cols="72">Răzvan Crainea
OpenSIPS Solutions
<a class="moz-txt-link-abbreviated" href="http://www.opensips-solutions.com">www.opensips-solutions.com</a></pre>
<div class="moz-cite-prefix">On 06/18/2015 12:48 PM, Mickael
Marrache wrote:<br>
</div>
<blockquote
cite="mid:CA+=4G22dg5_cH=11hb9nqR11my_Cc2fVtRka0S_VVSxDsjNPjg@mail.gmail.com"
type="cite">
<div dir="ltr">To add more information, I remember there was no
way to define an integer AVP with value 0. I see a lot of such
AVPs.</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Jun 18, 2015 at 12:03 PM,
Mickael Marrache <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:mickaelmarrache@gmail.com" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:mickaelmarrache@gmail.com">mickaelmarrache@gmail.com</a></a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Correction of my previous email.
<div><br>
</div>
<div>When I said I found AVPs without data, I may be
wrong. avp->flags == 0 probably means the AVP data is
an integer. So, that explains the weird values (e.g.
0x8000) I tried to interpret as memory addresses.</div>
<span class="HOEnZb"><font color="#888888">
<div><br>
</div>
<div>Mickael</div>
</font></span></div>
<div class="HOEnZb">
<div class="h5">
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Jun 18, 2015 at 11:12
AM, Mickael Marrache <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:mickaelmarrache@gmail.com"
target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:mickaelmarrache@gmail.com">mickaelmarrache@gmail.com</a></a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Hi Razvan,
<div><br>
</div>
<div>Here is what I've done.</div>
<div><br>
</div>
<div>I took a core dump of the attendant
process. Then, I stopped OpenSIPS so that it
frees allocated fragments, and at the end
lists all fragments that are still allocated.</div>
<div><br>
</div>
<div>In this list of fragments, I can see a lot
of AVPs.</div>
<div><br>
</div>
<div>I see some AVPs without data (avp->data
== NULL, avp->flags == 0). But something is
weird, it looks like that all AVPs that don't
have data have the same id. It looks like
duplicate AVPs (in different memory
fragments).</div>
<div><br>
</div>
<div>Some AVPs do have data and have a format
that looks valid.</div>
<div><br>
</div>
<div>Some AVPs looks corrupted. For example, I
found an AVP with same ID as the AVPs without
data, but avp->data == 0x8000 which looks
completely wrong.</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Mickael</div>
</div>
<div>
<div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Jun 18,
2015 at 10:11 AM, Mickael Marrache <span
dir="ltr"><<a moz-do-not-send="true"
href="mailto:mickaelmarrache@gmail.com" target="_blank">mickaelmarrache@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px
#ccc solid;padding-left:1ex">
<div dir="ltr">Hi Razvan,
<div><br>
</div>
<div>I created a core dump for the
attendant process. Is it enough or
we also need core dumps for other
processes? Note that the leak
appears in shared memory.</div>
<div><br>
</div>
<div>We do use QM debug for this
version, this is how I discovered
the remaining AVPs at shutdown where
the remaining allocated memory
fragments are listed.</div>
<div><br>
</div>
<div>Do you know where I should look
for the AVPs in the core dump?</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Mickael </div>
</div>
<div>
<div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Tue,
Jun 16, 2015 at 5:11 PM, Răzvan
Crainea <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:razvan@opensips.org"
target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:razvan@opensips.org">razvan@opensips.org</a></a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0 0 0
.8ex;border-left:1px #ccc
solid;padding-left:1ex">
<div bgcolor="#FFFFFF"
text="#000000"> <tt>Hi,
Mickael!<br>
<br>
I don't know what exactly
might cause the leak. What
you can do is to try to
get a core dump (using
tools like gcore) during
low (or unexisting)
traffic and try to see
what do the AVPs that are
leaking contain. Are you
using QM debug?<br>
<br>
Best regards,<br>
</tt>
<pre cols="72">Răzvan Crainea
OpenSIPS Solutions
<a moz-do-not-send="true" href="http://www.opensips-solutions.com" target="_blank">www.opensips-solutions.com</a></pre>
<div>
<div>
<div>On 05/27/2015 12:37
PM, Mickael Marrache
wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Any
idea? Is there
something that may
help finding the
leak cause?</div>
<div
class="gmail_extra"><br>
<div
class="gmail_quote">On
Tue, May 19, 2015
at 1:17 PM,
Mickael Marrache <span
dir="ltr"><<a
moz-do-not-send="true" href="mailto:mickaelmarrache@gmail.com"
target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:mickaelmarrache@gmail.com">mickaelmarrache@gmail.com</a></a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0
0 0
.8ex;border-left:1px
#ccc
solid;padding-left:1ex">
<div dir="ltr">Any
idea what we
should do?
<div><br>
</div>
<div>I may be
doing
something
wrong but I
don't remember
I had to take
care of memory
management
when dealing
with AVPs.</div>
<div><br>
</div>
<div>Am I
right?</div>
</div>
<br>
</blockquote>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</body>
</html>