Install debuginfo packages:
$ debuginfo-install bind bind-dyndb-ldap
Package versions have to match precisely. Pull older versions from Koji as necessary:
$ koji download-build --arch={x86_64,noarch} bind-9.9.3-14.P2.fc19``
$ yum downgrade bind*.rpm``
Use GDB to read coredumps as usual: http://stackoverflow.com/questions/5115613/core-dump-file-analysis
$ gdb `which named` coredump
Find the thread where it crashed:
(gdb) thread apply all bt
Thread 1 (Thread 0x7fedd7f75700 (LWP 1383)):
#0 0x00007fedd92999e9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
---Type <return> to continue, or q <return> to quit---
#1 0x00007fedd929b0f8 in __GI_abort () at abort.c:90
#2 0x00007feddc2da4a6 in assertion_failed (file=<optimized out>, line=<optimized out>, type=<optimized out>, cond=<optimized out>) at ./main.c:219
#3 0x00007fedda4d910a in isc_assertion_failed (file=file@entry=0x7feddbc2238f "db.c", line=line@entry=636, type=type@entry=isc_assertiontype_require,
cond=cond@entry=0x7feddbc1d8c0 "nodep != ((void *)0) && *nodep != ((void *)0)") at assertions.c:57
#4 0x00007feddbaeeedf in dns_db_detachnode (db=<optimized out>, nodep=nodep@entry=0x7fedd7f71a18) at db.c:636
#5 0x00007feddc2e8f9f in query_find (client=0x7fedd0047190, event=event@entry=0x0, qtype=<optimized out>, qtype@entry=28) at query.c:6507
#6 0x00007feddc2ef2a9 in ns_query_start (client=client@entry=0x7fedd0047190) at query.c:7790
#7 0x00007feddc2cf8d3 in client_request (task=<optimized out>, event=<optimized out>) at client.c:1970
#8 0x00007fedda4faf46 in dispatch (manager=0x7feddc252010) at task.c:1116
#9 run (uap=0x7feddc252010) at task.c:1286
#10 0x00007fedda0b0c53 in start_thread (arg=0x7fedd7f75700) at pthread_create.c:308
#11 0x00007fedd9359dbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
And now find out why ... :-)
In the example above, frame 5
shows some code related to
DNS64
which was never tested with bind-dyndb-ldap
...