Hi Mark,
Mark Reynolds<mareynol(a)redhat.com>
> We actually just fixed this on Friday via Ticket 305. Rich would know
> more about the next release that would contain this fix.
This is it
https://fedorahosted.org/389/ticket/305
The stuff is cos-related, and I saw the patch.
The "guilty" lines are moved... Can I just apply that patch or do I have to
checkout the whole new tree?
If you already have the source for 1.2.10.2 you can
just apply that
patch. I'm planning a 1.2.10.3 release which will have that patch and a
couple of others.
Peace,
R.
>
> Regards,
> Mark
>
> On 03/05/2012 09:18 AM, Roberto Polli wrote:
>> Hi Rich | everybody,
>>
>> We just experience a continuous segfault (each 20mins).
>>
>> This is the interesting part:
>> #3 0x00007f8e635c20c6 in malloc_printerr () from /lib64/libc.so.6
>> #4 0x00007f8e65ac8b16 in slapi_ch_free (ptr=0x7f8e28017480) at
>> ldap/servers/slapd/ch_malloc.c:363
>> #5 0x00007f8e5cfe7190 in cos_cache_query_attr (ptheCache=0x7f8e280178d0,
>> context=0x0, e=0x7f8dc8016d00, type=0x7f8e28003760 "inetcos",
>> out_attr=0x0, test_this=0x0, result=0x0,
>>
>> When exploring the dump, I found that:
>> - everything happens in cache;
>> - it crashes while freeing a string containing a DN;
>> - gdb was able to print out the given string;
>> - the "guilty" code strangely clones the given string, then frees
the
>>
>> original one with slapi_ch_free();
>>
>> Two sample stack traces and rpm infos follow.
>>
>> Do you have any hint?
>> Thx+Peace,
>> R.
>>
>>
>>
>> = Version =
>>
>> rpm -qi 389-ds-base
>> Name : 389-ds-base Relocations: (not relocatable)
>> Version : 1.2.10.2 Vendor: (none)
>> Release : 1.el6 Build Date: Thu 23 Feb 2012 05:13:45 PM CET
>> Install Date: Mon 27 Feb 2012 12:17:52 PM CET Build Host: vmhost
>> Group : System Environment/Daemons Source RPM: 389-ds-
>> base-1.2.10.2-1.el6.src.rpm
>> Size : 4847506 License: GPLv2 with exceptions
>> Signature : (none)
>> URL :
http://port389.org/
>> Summary : 389 Directory Server (base)
>> Description :
>> 389 Directory Server is an LDAPv3 compliant server. The base package
>> includes the LDAP server and command line utilities for server
>> administration.
>>
>> = Trace 1 =
>>
>> #0 0x00007f8e6357f885 in raise () from /lib64/libc.so.6
>> #1 0x00007f8e63581065 in abort () from /lib64/libc.so.6
>> #2 0x00007f8e635bc7a7 in __libc_message () from /lib64/libc.so.6
>> #3 0x00007f8e635c20c6 in malloc_printerr () from /lib64/libc.so.6
>> #4 0x00007f8e65ac8b16 in slapi_ch_free (ptr=0x7f8e28017480) at
>> ldap/servers/slapd/ch_malloc.c:363
>> #5 0x00007f8e5cfe7190 in cos_cache_query_attr (ptheCache=0x7f8e280178d0,
>> context=0x0, e=0x7f8dc8016d00, type=0x7f8e28003760 "inetcos",
>> out_attr=0x0, test_this=0x0, result=0x0,
>> props=0x7f8d9c3f8a5c) at ldap/servers/plugins/cos/cos_cache.c:2393
>> #6 0x00007f8e5cfea9aa in cos_cache_vattr_types (handle=<value optimized
>> out>, e=0x7f8dc8016d00, type_context=0x7f8d9c3f8ad0, flags=<value
>> optimized out>) at ldap/servers/plugins/cos/cos_cache.c:2199
>> #7 0x00007f8e65b3ad90 in slapi_vattr_list_attrs (e=0x7f8dc8016d00,
>> types=0x7f8d9c3f8c78, flags=4, buffer_flags=0x7f8d9c3f8cbc) at
>> ldap/servers/slapd/vattr.c:1289
>> #8 0x00007f8e65b1fc00 in send_all_attrs (pb=0x2987dc0, e=0x7f8dc8016d00,
>> ectrls=0x7f8dc8016cd8, attrs=0x0, attrsonly=0, send_result=0, nentries=0,
>> urls=0x0)
>> at ldap/servers/slapd/result.c:915
>> #9 send_ldap_search_entry_ext (pb=0x2987dc0, e=0x7f8dc8016d00,
>> ectrls=0x7f8dc8016cd8, attrs=0x0, attrsonly=0, send_result=0, nentries=0,
>> urls=0x0) at ldap/servers/slapd/result.c:1362
>> #10 0x00007f8e65b2046c in send_ldap_search_entry (pb=<value optimized
>> out>, e=<value optimized out>, ectrls=<value optimized out>,
>> attrs=<value optimized out>,
>> attrsonly=<value optimized out>) at ldap/servers/slapd/result.c:814
>> #11 0x00000000004208e2 in ps_send_results (arg=<value optimized out>) at
>> ldap/servers/slapd/psearch.c:373
>> #12 0x00007f8e63f516f3 in ?? () from /lib64/libnspr4.so
>> #13 0x00007f8e638f57f1 in start_thread () from /lib64/libpthread.so.0
>> #14 0x00007f8e6363292d in clone () from /lib64/libc.so.6
>>
>> = Trace 2 =
>> #0 0x00007f8e6357f885 in raise () from /lib64/libc.so.6
>> #1 0x00007f8e63581065 in abort () from /lib64/libc.so.6
>> #2 0x00007f8e635bc7a7 in __libc_message () from /lib64/libc.so.6
>> #3 0x00007f8e635c20c6 in malloc_printerr () from /lib64/libc.so.6
>> #4 0x00007f8e65ac8b16 in slapi_ch_free (ptr=0x7f8e28017480) at
>> ldap/servers/slapd/ch_malloc.c:363
>> #5 0x00007f8e5cfe7190 in cos_cache_query_attr (ptheCache=0x7f8e280178d0,
>> context=0x0, e=0x7f8dc8016d00, type=0x7f8e28003760 "inetcos",
>> out_attr=0x0, test_this=0x0, result=0x0,
>>
>> props=0x7f8d9c3f8a5c) at ldap/servers/plugins/cos/cos_cache.c:2393
>>
>> #6 0x00007f8e5cfea9aa in cos_cache_vattr_types (handle=<value optimized
>> out>, e=0x7f8dc8016d00, type_context=0x7f8d9c3f8ad0, flags=<value
>> optimized out>)
>>
>> at ldap/servers/plugins/cos/cos_cache.c:2199
>>
>> #7 0x00007f8e65b3ad90 in slapi_vattr_list_attrs (e=0x7f8dc8016d00,
>> types=0x7f8d9c3f8c78, flags=4, buffer_flags=0x7f8d9c3f8cbc) at
>> ldap/servers/slapd/vattr.c:1289
>> #8 0x00007f8e65b1fc00 in send_all_attrs (pb=0x2987dc0, e=0x7f8dc8016d00,
>> ectrls=0x7f8dc8016cd8, attrs=0x0, attrsonly=0, send_result=0, nentries=0,
>> urls=0x0)
>>
>> at ldap/servers/slapd/result.c:915
>>
>> #9 send_ldap_search_entry_ext (pb=0x2987dc0, e=0x7f8dc8016d00,
>> ectrls=0x7f8dc8016cd8, attrs=0x0, attrsonly=0, send_result=0, nentries=0,
>> urls=0x0) at ldap/servers/slapd/result.c:1362
>> #10 0x00007f8e65b2046c in send_ldap_search_entry (pb=<value optimized
>> out>, e=<value optimized out>, ectrls=<value optimized out>,
>> attrs=<value optimized out>,
>>
>> attrsonly=<value optimized out>) at ldap/servers/slapd/result.c:814
>>
>> #11 0x00000000004208e2 in ps_send_results (arg=<value optimized out>) at
>> ldap/servers/slapd/psearch.c:373
>> #12 0x00007f8e63f516f3 in ?? () from /lib64/libnspr4.so
>> #13 0x00007f8e638f57f1 in start_thread () from /lib64/libpthread.so.0
>> #14 0x00007f8e6363292d in clone () from /lib64/libc.so.6
>>
>> # rpm -qi 389-ds-base
>> Name : 389-ds-base Relocations: (not relocatable)
>> Version : 1.2.10.2 Vendor: (none)
>> Release : 1.el6 Build Date: Thu 23 Feb 2012 05:13:45 PM CET
>> Install Date: Mon 27 Feb 2012 12:17:52 PM CET Build Host: vmhost
>> Group : System Environment/Daemons Source RPM: 389-ds-
>> base-1.2.10.2-1.el6.src.rpm
>> Size : 4847506 License: GPLv2 with exceptions
>> Signature : (none)
>> URL :
http://port389.org/
>> Summary : 389 Directory Server (base)
>> Description :
>> 389 Directory Server is an LDAPv3 compliant server. The base package
>> includes the LDAP server and command line utilities for server
>> administration.