On 11/15/2016 12:08 PM, Rich Megginson wrote:
It is also useful to get a few stacktraces which will give us
detailed
information about what the server is doing. For example, if you can
"catch" the server while it is misbehaving, and get stacktraces every
second for 10 seconds.
http://www.port389.org/docs/389ds/FAQ/faq.html#debugging-hangs
This might be really good news: In addition to oddly high CPU
utilization, we sometimes see slapd lock up completely. I managed to
catch the server in such a state and get a backtrace. Can you let me
know if this clarifies the problem at all?
When the server wedged, an ldap client would complete a connect() call
to establish the connection, write some data, and then hang indefinitely:
connect(3, {sa_family=AF_INET6, sin6_port=htons(389),
inet_pton(AF_INET6, "::1", &sin6_addr), sin6_flowinfo=0,
sin6_scope_id=0}, 28) = 0
write(3,
"0>\2\1\1c9\4\0\n\1\0\n\1\0\2\1\0\2\1\0\1\1\0\207\vobjectclass0\31\4\27supportedSASLMechanisms",
64) = 64
poll([{fd=3, events=POLLIN|POLLPRI}], 1, 4294967295) = ?
ERESTART_RESTARTBLOCK (Interrupted by signal)
I'd been running dbmon.sh in a terminal, and it had hung with no output
for several minutes. The last thing it printed was rather normal:
dbname count free free% size
userroot:ent 3607 78692851 75.0 7253.9
userroot:dn 3607 10162827 96.9 89.5