<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix"><font face="Times New Roman, Times,
serif">Hi Ludwig,</font><br>
<br>
<blockquote><font face="Times New Roman, Times, serif">You are
right, the test case only checks that trimming is still
working <span class="moz-smiley-s6"><span> :-[ </span></span>.<br>
<br>
The problem is that the failing thread ends with an invalid
pointer and SIGSEV.<br>
I imagine two possibilities:<br>
</font>
<ul>
<li><font face="Times New Roman, Times, serif">The thread
dereference a pointer that is not a valid address.<br>
The stacktrace makes think we are in that case. The
pointer is said to be e=0x105.<br>
Now I do not understand how this can occur because this
pointer is an entry returned from an internal search so it
should be an address on the heap.<br>
This pointer value is displayed as arg of
slapi_entry_attr_find but can not be retrieve from the
calling function. So I am unsure if the displayed value
was the effective value. </font><br>
<blockquote><tt>Thread 1 (Thread 0x7f83a2cb2700 (LWP
30103)):</tt><tt><br>
</tt><tt>#0 attrlist_find (a=0x105, type=0x7f8395818716
"changetime") at ldap/servers/slapd/attrlist.c:144</tt><tt><br>
</tt><tt>No locals.</tt><tt><br>
</tt><tt>#1 0x00007f83a286bec2 in slapi_entry_attr_find (<b>e=0x105</b>,
type=0x7f8395818716 "changetime", a=0x7f83a2cb1d58) at
ldap/servers/slapd/entry.c:2362</tt><tt><br>
</tt><tt> r = 1547436624</tt><tt><br>
</tt><tt>#2 0x00007f83958176b0 in trim_changelog () at
ldap/servers/plugins/retrocl/retrocl_trim.c:287</tt><tt><br>
</tt><tt> sval = 0x0</tt><tt><br>
</tt><tt> val = 0x0</tt><tt><br>
</tt><tt> did_delete = 0</tt><tt><br>
</tt><tt> attr = 0x0</tt><tt><br>
</tt><tt> ldrc = <optimized out></tt><tt><br>
</tt><tt> me = 172800</tt><tt><br>
</tt><tt> done = 0</tt><tt><br>
</tt><tt> <b>e = <optimized out></b></tt></blockquote>
<font face="Times New Roman, Times, serif">If the value
returned by internal search was 0x105, then I think an
error (heap corruption ?) occurred down in the internal
search and the current stacktrace can not help us to find
it.</font><br>
<br>
</li>
<li><font face="Times New Roman, Times, serif">The thread
dereference a pointer that is no longer allocated.<br>
<br>
This is the purpose of this fix as we know that the
returned entry was accessed outside of the callback
function, where the entry has been freed.<br>
This fix has no test case because to trigger the crash the
entry must be freed/allocated before the trimming thread
access it.</font><br>
<br>
</li>
</ul>
<font face="Times New Roman, Times, serif">The fix changed the
trimming algo so the test case I made was to verify that the
trimming was still working.<br>
Martin explained me that the crash occurred while there was no
ldap client activity. I will then setup some test machines,
run the freeipa acceptance and let them idle other the week
end. I will run one machine without the fix and the others
with the fix. Also I will reduce the timming period. </font><br>
<br>
thanks<br>
thierry<br>
<br>
</blockquote>
On 08/21/2014 04:23 PM, Ludwig Krispenz wrote:<br>
</div>
<blockquote cite="mid:53F600E9.40500@redhat.com" type="cite">
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
The test case you provide looks like it is testing that changelog
trimming is working, shouldn't the test case for the ticket
produce the crash it fixes (or does it and I missed it) ?<br>
<div class="moz-cite-prefix">On 08/21/2014 03:40 PM, thierry
bordaz wrote:<br>
</div>
<blockquote cite="mid:53F5F6BD.7030507@redhat.com" type="cite">
<meta http-equiv="content-type" content="text/html;
charset=UTF-8">
<font face="Times New Roman, Times, serif">Ticket <a
moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://fedorahosted.org/389/ticket/47871">https://fedorahosted.org/389/ticket/47871</a><br>
Fix: <a moz-do-not-send="true" class="moz-txt-link-freetext"
href="https://fedorahosted.org/389/attachment/ticket/47871/0001-Ticket-47871-389-ds-base-1.3.2.21-1.fc20-crashed-ove.patch">https://fedorahosted.org/389/attachment/ticket/47871/0001-Ticket-47871-389-ds-base-1.3.2.21-1.fc20-crashed-ove.patch</a><br>
Test case: <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="https://fedorahosted.org/389/attachment/ticket/47871/0002-Ticket-47871-Test-case-389-ds-base-1.3.2.21-1.fc20-c.patch">https://fedorahosted.org/389/attachment/ticket/47871/0002-Ticket-47871-Test-case-389-ds-base-1.3.2.21-1.fc20-c.patch</a><br>
<br>
Thanks<br>
thierry<br>
</font> <br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">--
389-devel mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:389-devel@lists.fedoraproject.org">389-devel@lists.fedoraproject.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="https://admin.fedoraproject.org/mailman/listinfo/389-devel">https://admin.fedoraproject.org/mailman/listinfo/389-devel</a></pre>
</blockquote>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">--
389-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:389-devel@lists.fedoraproject.org">389-devel@lists.fedoraproject.org</a>
<a class="moz-txt-link-freetext" href="https://admin.fedoraproject.org/mailman/listinfo/389-devel">https://admin.fedoraproject.org/mailman/listinfo/389-devel</a></pre>
</blockquote>
<br>
</body>
</html>