I'll deliver the gdb(1) results as soon as I'm able to compile with
relevant options. Meanwhile, here is some more debugging results
about the break down of 'slapd -d -1 [...]'
#
========================================================================
#
[...]
553dfcc9 filter: (&(associatedDomain=
somedom.tld)(!(destinationIndicator=*)))
ber_scanf fmt ({M}}) ber:
ber_dump: buf=0x94b40f020 ptr=0x94b40f09a end=0x94b40f0ae len=20
0000: 00 12 04 10 61 73 73 6f 63 69 61 74 65 64 44 6f
....associatedDo
0010: 6d 61 69 6e
main
553dfcc9 attrs:553dfcc9 associatedDomain553dfcc9
553dfcc9 conn=1007 op=331 SRCH
base="ou=domains,ou=mail,dc=MyDomain,dc=Local" scope=2 deref=0
filter="(&(associatedDomain=somedom.tld)(!(destinationIndicator=*)))"
ber_get_next: tag 0x30 len 105 contents:
ber_dump: buf=0x943d502b0 ptr=0x943d502b0 end=0x943d50319 len=105
0000: 02 01 0c 63 64 04 28 6f 75 3d 61 63 63 6f 75 6e
...cd.(ou=accoun
0010: 74 73 2c 6f 75 3d 6d 61 69 6c 2c 64 63 3d 4e 65
ts,ou=mail,dc=Ne
0020: 74 4f 63 65 61 6e 2c 64 63 3d 4c 6f 63 61 6c 0a
tOcean,dc=Local.
0030: 01 02 0a 01 00 02 01 00 02 01 0a 01 01 00 a3 1c
................
0040: 04 0b 6d 61 69 6c 41 64 64 72 65 73 73 04 0d 40
..mailAddress..@
0050: 6e 65 74 6f 63 65 61 6e 2e 64 65 20 30 0b 04 09
somedom.tld 0...
0060: 6d 61 69 6c 41 6c 69 61 73
mailAlias
553dfcc9 conn=1007 op=331 SRCH attr=associatedDomain
553dfcc9 op tag 0x63, time 1430125769
ber_get_next
553dfcc9 ==> limits_get: conn=1007 op=331 self="[anonymous]"
this="ou=domains,ou=mail,dc=mydomain,dc=local"
tls_read: want=5 error=Resource temporarily unavailable
ldap_read: want=8 error=Resource temporarily unavailable
Segmentation fault
#
========================================================================
#
[...]
553dfd7c daemon: select: listen=6 active_threads=0 tvp=NULL
553dfd7c conn=1008 op=2 SRCH attr=associatedDomain
TLS trace: SSL_accept:SSLv3 read client key exchange A
TLS trace: SSL_accept:SSLv3 read finished A
tls_read: want=5, got=5
553dfd7c ==> limits_get: conn=1008 op=2 self="[anonymous]"
this="ou=domains,ou=mail,dc=mydomain,dc=local"
553dfd7c daemon: select: listen=7 active_threads=0 tvp=NULL
553dfd7c daemon: select: listen=8 active_threads=0 tvp=NULL
553dfd7c daemon: select: listen=9 active_threads=0 tvp=NULL
553dfd7c => mdb_equality_candidates (associatedDomain)
Segmentation fault
#
========================================================================
#
[...]
553dfdf3 => mdb_list_candidates 0xa1
553dfdf3 => mdb_filter_candidates
553dfdf3 EQUALITY
553dfdf3 => mdb_equality_candidates (objectClass)
553dfdf3 => key_read
553dfdf3 mdb_idl_fetch_key: [b49d1940]
553dfdf3 <= mdb_index_read: failed (-30798)
553dfdf3 <= mdb_equality_candidates: id=0, first=0, last=0
553dfdf3 <= mdb_filter_candidates: id=0 first=0 last=0
553dfdf3 => mdb_filter_candidates
553dfdf3 EQUALITY
553dfdf3 conn=1002 op=1131 SRCH attr=associatedDomain
553dfdf3 => mdb_equality_candidates (mailAddress)
553dfdf3 => key_read
553dfdf3 mdb_idl_fetch_key: [a4af5673]
553dfdf3 ==> limits_get: conn=1002 op=1131 self="[anonymous]"
this="ou=domains,ou=mail,dc=mydomain,dc=local"
553dfdf3 <= mdb_index_read: failed (-30798)
553dfdf3 <= mdb_equality_candidates: id=0, first=0, last=0
553dfdf3 <= mdb_filter_candidates: id=0 first=0 last=0
553dfdf3 <= mdb_list_candidates: id=0 first=0 last=0
553dfdf3 <= mdb_filter_candidates: id=0 first=0 last=0
Segmentation fault
Am 27.04.15 um 11:02 schrieb Leander Schäfer:
Hi
Michael,
Hi Ulrich,
Thanks for your reply. I'm running Version 2.4.40. As I said, I do
not run binary version. I always compile OpenLDAP from sources /
latest ports tree.
The maximum core file size "ulimit -c" was already set to
unlimited. I'm using bash-4.3.30
root@FreeBASD # ulimit -a
socket buffer size (bytes, -b) unlimited
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) 33554432
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) 131072
max memory size (kbytes, -m) 3012064
open files (-n) 87651
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 7592
virtual memory (kbytes, -v) unlimited
swap size (kbytes, -w) unlimited
root@FreeBSD # /usr/local/libexec/slapd -d -1 -f
/usr/local/etc/openldap/slapd.conf -u ldap -g ldap -h
"ldapi://%2fvar%2frun%2fopenldap%2fldapi/ ldap:/// ldaps:///"
#
===================================================================
#
[...]
I have removed the previous lines for this demo
[...]
553ded5a mailUidNumber 0040: 2e e8 e7 5a 9a fe a0 8c 02 96 e9
58 48 e0 49 10 ...Z.......XH.I.
0050: cd 10 08 6c 20 1f 9d bc ae dd 9a 4a 79 7e f2 3c ...l
......Jy~.<
0060: 25 a2 72 fe ac cc d0 09 eb 62 d2 bd 95 c8 50 7f
%.r......b....P.
0020: b0 86 e3 1d 11 32 2d 8b fd 57 a6 a4 ce a2 ee 2f
.....2-..W...../
0030: 52 59 da 4d 7b d1 5c 0c 22 34 29 86 c2 9c 80 72
RY.M{.\."4)....r
0040: ca 94 4d 69 2e ..Mi.
0010: 73 2c 6f 75 3d 6d 61 69 6c 2c 64 63 3d 4e 65 74
s,ou=mail,dc=MyD
0020: 4f 63 65 61 6e 2c 64 63 3d 4c 6f 63 61 6c 0a 01
omain,dc=Local..
0090: 8e 5f 68 e0 0a 31 26 07 da 21 c6 cd 27 0e 17 2b
._h..1&..!..'..+
00a0: fb 53 5e 0a 84 74 50 b8 74 13 a5 fa e2 02 9a ee
.S^..tP.t.......
00b0: 5e ee 8e 6c b2 d3 b6 6e 82 6d 01 ab eb 81 25 bd
^..l...n.m....%.
00c0: f1 05 16 5b 7f 9e bb 76 7c ae ba a2 24 73 89 78
...[...v|...$s.x
0070: ca 00 ec a3 7b 97 78 19 fe aa 56 fc a1 a5 9a 1e
....{.x...V.....
0080: 65 f0 04 b7 04 08 af 7a 82 ef 77 e......z..w
553ded5a mailGidNumberldap_read: want=8, got=8
553ded5a mailQuotaStorage 0000: 30 71 02 01 0b 63 6c
04 0q...cl.
ldap_read: want=107, got=107
00d0: 6c ae 39 eb 15 85 4a f9 c1 6f 65 ca 4f c6 db 14
l.9...J..oe.O...
ldap_write: want=14, written=14
00e0: c1 f4 fe b8 b5 a4 a3 75 96 b1 9b 9b 8f d5 d6 e5
.......u........
00f0: 8d 3c 75 4c 50 cc 9d 85 cf bb a1 d8 50 21 93 fa
.<uLP.......P!..
0100: 38 ee 89 46 45 4e 06 17 7a 8c 4b 83 51 95 a9 ca
8..FEN..z.K.Q...
0110: 71 8c d0 b9 59 1a 14 f4 10 8d b9 bc 80 d5 cb e9
q...Y...........
0120: 46 03 a2 ce 59 49 0b db fc ea a3 3b fa cd a1 99
F...YI.....;....
0030: 02 0a 01 00 02 01 00 02 01 78 01 01 00 a0 5a a3
.........x....Z.
0040: 1a 04 0b 6f 62 6a 65 63 74 43 6c 61 73 73 04 0b
...objectClass..
0130: 14 90 d6 0a 55 da 84 b1 42 fe af 8d 14 92 ce 27
....U...B......'
0050: 6d 61 69 6c 41 63 63 6f 75 6e 74 a3 1b 04 11 6d
mailAccount....m
0060: 61 69 6c 41 63 63 6f 75 6e 74 53 74 61 74 75 73
ailAccountStatus
0000: 30 0c 02 01 06 65 07 0a 01 00 04 00 04 00 0....e........
0070: 04 06 61 63 74 69 76 65 a3 1f 04 0b 6d 61 69 6c
..active....mail
0080: 41 64 64 72 65 73 73 04 10 69 6e 66 6f 40 6e 65
Address..info@So
0090: 74 6f 63 65 61 6e 2e 64 65 30 6f 04 14 6d 61 69
meDom.tld0o..mai
00a0: 6c 53 74 6f 72 61 67 65 44 69 72 65 63 74 6f 72
lStorageDirector
553ded5a mailQuotaMessages553ded5a
00b0: 79 04 14 6d 61 69 6c 53 74 6f 72 61 67 65 44 69
y..mailStorageDi
553ded5a conn=1008 op=5 SRCH
base="ou=accounts,ou=mail,dc=MyDomain,dc=Local" scope=2 deref=0
filter="(&(objectClass=mailAccount)(mailAccountStatus=active)(mailAddress=info@somedom.tld))"
00c0: 72 65 63 74 6f 72 79 04 0d 6d 61 69 6c 55 69 64
rectory..mailUid
0000: 28 6f 75 3d 61 63 63 6f 75 6e 74 73 2c 6f 75 3d
(ou=accounts,ou=
553ded5a conn=1008 op=4 SEARCH RESULT tag=101 err=0 nentries=0
text=
00d0: 4e 75 6d 62 65 72 04 0d 6d 61 69 6c 47 69 64 4e
Number..mailGidN
553ded5a conn=1008 op=5 SRCH attr=mailStorageDirectory
mailStorageDirectory mailUidNumber mailGidNumber mailQuotaStorage
mailQuotaMessages
ldap_read: want=8, got=8
0000: 30 82 01 0d 02 01 09 63 0......c
ldap_read: want=265, got=265
0000: 82 01 06 04 28 6f 75 3d 61 63 63 6f 75 6e 74 73
....(ou=accounts
0010: 2c 6f 75 3d 6d 61 69 6c 2c 64 63 3d 4e 65 74 4f
,ou=mail,dc=MyDo
553ded5a ==> limits_get: conn=1008 op=5
self="uid=dovecot,ou=systemuser,ou=mail,dc=mydomain,dc=local"
this="ou=accounts,ou=mail,dc=mydomain,dc=local"
00e0: 75 6d 62 65 72 04 10 6d 61 69 6c 51 75 6f 74 61
umber..mailQuota
Segmentation fault
#
===================================================================
#
... and a second time the same debugging (-d -1)
#
===================================================================
#
[...]
553df2b8 conn=1000 op=6 SRCH
base="ou=accounts,ou=mail,dc=MyDomain,dc=Local" scope=2 deref=0
filter="(&(objectClass=mailAccount)(mailAccountStatus=active)(mailAddress=info@somedom.tld))"
0010: 70 7b e7 97 2e b3 3e 24 f8 bc 52 c5 ce 0d b8 fb
p{....>$..R.....
0020: 89 cb 07 f8 d3 34 0a 39 9a fc 0d 0d b9 bb d4 13
.....4.9........
0030: 8d 1f 56 87 c0 9c 10 2b a2 57 ee 3b 4b 93 6a 7c
..V....+.W.;K.j|
TLS trace: SSL_accept:SSLv3 read finished A
553df2b8 conn=1000 op=6 SRCH attr=mailStorageDirectory
mailStorageDirectory mailUidNumber mailGidNumber mailQuotaStorage
mailQuotaMessages
553df2b8 connection_read(20): checking for input on id=1006
553df2b8 ==> limits_get: conn=1000 op=6
self="uid=dovecot,ou=systemuser,ou=mail,dc=mydomain,dc=local"
this="ou=accounts,ou=mail,dc=mydomain,dc=local"
0040: 54 2b b2 49 7e f7 ce 89 19 96 fe 83 86 77 5a 3a
T+.I~........wZ:
Segmentation fault
#
===================================================================
#
I'm currently trying to figure out a way to add "-O0 -g" gdb(1)
support for the slapd(8C) command, since I'm compiling OpenLDAP
sources from ports tree. I'll post it as soon as I got it. But
maybe you can already assume some pre-diagnosis from the above
output?
@Ulrich:
- Yes, I have tried several hardware plattforms, different
physical, VmWare and now the latest XenServer. Same results all
over.
- A detailed log debug can be seen on:
https://forums.freebsd.org/threads/openldap-slapd-dies-sporadically.47634/
- Be warned from the above diagnosis in the forum: It is NOT the
assumed newsyslog(8) which causes the crashes!
- What exactly do you mean by "exists cleanly"?
Best regards
Leander
Am 27.04.15 um 08:59 schrieb Ulrich Windl:
Hi!
You should tell about the operation you do when slapd crashes,
maybe as well
the last log messages you see. Also: Did you try different
hardware and
different compilers to run and compile slapd? What about doing
an "-O0 -g"
build and enable core dumps? Or are you telling slapd exits
"cleanly"?
Regards,
Ulrich
Am 26.04.15 um 13:48 schrieb Michael Ströder:
Leander Schäfer wrote:
my OpenLDAP keeps on dying sporadically.
Which OpenLDAP version is this?
Please note that OpenLDAP project does not know details about
binary distribution releases.
Did you try with your own build from source using a recent
OpenLDAP release?
Unfortunately it doesn't leave ANY
trace of why it crashes.
I'm not familiar with FreeBSD. But try this to get more details:
1. Run with ulimit -c unlimited to get a core dump file.
2. Provide gdb stack trace like described herein:
http://www.openldap.org/faq/data/cache/59.html
Ciao, Michael.
|