[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#5022) ldappasswd crash consumer slapd with some loglevels



Simon Gao wrote:
> Pierangelo Masarati wrote:
>> gao@schrodinger.com wrote:
>>
>>   
>>> URL: ftp://ftp.schrodinger.com/support/openldap/simon.gao.openldap_2.3.35.its.ext
>>>     
>> ^^^ This link is unreachable
>>
>>   
> Sorry about the broken link. Here is the correct one:
> 
> ftp://ftp.schrodinger.com/support/openldap/simon.gao.openldap_20070618.ext
> 
>>> When following command against a consumer slapd, it will crash slapd of the
>>> consumer when loglevel is set to any other value other than 1 or -1 on the
>>> consumer:
>>>
>>> ldappasswd -v -H ldap://consumer -D "uid=joe,ou=people,dc=example,dc=com" -W -S
>>> -x -A
>>>
>>> The crash happens to at least to loglevel 0, 256, 512. When loglevel is set to 1
>>> or "-1", then no crash is experienced. In addition, when run consumer slapd
>>> manually as front process,
>>>     
>> ^^^ what does this mean?
>>   
> If I start slapd manually as following commands:
> 
> /usr/lib/openldap/slapd -d 0 -u ldap -g ldap -h 'ldap:// ldaps'
> /usr/lib/openldap/slapd -d 256 -u ldap -g ldap -h 'ldap:// ldaps'
> /usr/lib/openldap/slapd -d 512 -u ldap -g ldap -h 'ldap:// ldaps'
> 
> Then I did not see the problem as I would when setting loglevel to 0,
> 256, 512 in slapd.conf and start slapd from /etc/init.d/slapd, which
> launch the daemon with the same options. When starting slapd from
> /etc/init.d/slapd as background daemon process, slapd will write to
> /var/log/ldap.log and /var/log/message. It seems that the difference
> exists between writing ldap logs to a file (slapd runs in background) or
> writing to console (slapd runs in foreground as started manually).
>  
>>   
>>> then all debug level works without problem.
>>>     
>> OpenLDAP re23 (in practice, 2.3.36 just released) doesn't show anything
>> like that.  I note that differences related to the debug level usually
>> mean that a NULL or an invalid pointer is passed to a *printf(3) routine
>> on those systems that do not tolerate it (e.g. Solaris).  But usually
>> the bug disappears when __decreasing__ the log level, while -1 means all.
>>
>> p.
>>   
> 
> I would expect writing less log should help avoiding problem. In this
> case, somehow logging must be set at certain or above a level. Below
> that it will trigger problem. While I was trying to get pieces working,
> I always set loglevel to 1 or -1. So I did not realize this problem
> until very late. The error I got as a result of attempting change
> password is "can't contact LDAP server" which is very confusing (might
> be because slapd already crashed before serving last request).
> 
> I am happy to run more tests and provide further information as needed.

If slapd crashes, the only really useful info is a core dump, as
indicated in the FAQ I already pointed you to (that's basically why I
pointed you there: there's no point in always repeating instructions for
bug tracing, that's what the FAQ is intended for; apparently, it's
totally ignored).

p.



Ing. Pierangelo Masarati
OpenLDAP Core Team

SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
---------------------------------------
Office:  +39 02 23998309
Mobile:  +39 333 4963172
Email:   pierangelo.masarati@sys-net.it
---------------------------------------