Full_Name: Quanah Gibson-Mount
Version: RE24 10/7/2008
OS: Linux 2.6
URL:
ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (75.111.29.239)
I have a database using back-hdb, which segfaults while creating a domain in the
database (zimbra style).
It's clearly logged here:
Tue Oct 7 12:16:26 2008 *** Running as zimbra user: /opt/zimbra/bin/zmprov -l
cd
freelancer.lab.zimbra.com
ERROR: service.FAILURE (system failure: unable to create domain:
freelancer.lab.zimbra.com) (cause: javax.naming.ServiceUnavailableException
freelancer.lab.zimbra.com:389; socket closed)
where the socket got closed during the operation (cd means create domain, and
would add a dc=freelancer,dc=lab,dc=zimbra,dc=com object in the database).
backtrace has:
(gdb) bt
#0 0x00002b41adac6839 in hdb_dn2id_add (op=0x1d11bc00, txn=0x1dc6ea20,
eip=0x1b765080, e=0x1d01f828) at dn2id.c:617
#1 0x00002b41adab2029 in hdb_add (op=0x1d11bc00, rs=0x434aac70) at add.c:329
#2 0x000000000043cecd in fe_op_add (op=0x1d11bc00, rs=0x434aac70) at add.c:334
#3 0x000000000043c857 in do_add (op=0x1d11bc00, rs=0x434aac70) at add.c:194
#4 0x0000000000433d59 in connection_operation (ctx=0x434aadc0,
arg_v=0x1d11bc00) at connection.c:1084
#5 0x0000000000434274 in connection_read_thread (ctx=0x434aadc0, argv=0xc) at
connection.c:1210
#6 0x00002b41aa6c3a27 in ldap_int_thread_pool_wrapper (xpool=0x1b75fe00) at
tpool.c:663
#7 0x00000038dcc061b5 in start_thread () from /lib64/libpthread.so.0
#8 0x00000038dc0cd36d in clone () from /lib64/libc.so.6
#9 0x0000000000000000 in ?? ()
(gdb) print *eip
$2 = {bei_parent = 0x0, bei_id = 0, bei_lockpad = 0, bei_state = 128,
bei_finders = 0, bei_nrdn = {bv_len = 0, bv_val = 0x0}, bei_rdn = {bv_len = 0,
bv_val = 0x0}, bei_modrdns = 0,
bei_ckids = 1, bei_dkids = 0, bei_e = 0x1d01f008, bei_kids = 0x1da3c080,
bei_kids_mutex = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0,
__kind = 0, __spins = 0,
__list = {__prev = 0x0, __next = 0x0}}, __size = '\0' <repeats 39
times>,
__align = 0}, bei_lrunext = 0x0, bei_lruprev = 0x0}
(gdb) print *eip->bei_e
$3 = {e_id = 0, e_name = {bv_len = 0, bv_val = 0x1d13e9d8 ""}, e_nname =
{bv_len
= 0, bv_val = 0x1d13e9d0 ""}, e_attrs = 0x0, e_ocflags = 288, e_bv = {bv_len =
0, bv_val = 0x0},
e_private = 0x1b765080}
--Quanah