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

Re: core on slapadd -w w/ OPENLDAP_REL_ENG_2_3



Update, just recompiled with bdb 4.2.52 w/ 4 patches from sleepycat and
the patch supplied in openldap 2.3 and got the same problem.

Is this useful?  I don't want to be spamming the list with useless
debugging junk.

Here is what it shows when I run slapadd under gdb.

(gdb) run -q -w -l /root/BUILD/import/dump.ldif
Starting program: /usr/local/openldap23_bdb42/sbin/slapadd -q -w -l
/root/BUILD/import/dump.ldif

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 2 (LWP 100278)]
0x080efe9c in hdb_dn2id (op=0xbfbfe7f0, txn=0x0, in=0x820dba0,
ei=0xbfbfe750)
    at dn2id.c:647
647             BDB_ID2DISK( ei->bei_parent->bei_id, &idp );

(gdb) bt full
#0  0x080efe9c in hdb_dn2id (op=0xbfbfe7f0, txn=0x0, in=0x820dba0,
    ei=0xbfbfe750) at dn2id.c:647
        i0 = 0
        tmp = 4
        _p = (unsigned char *) 0x1 <Error reading address 0x1: Bad
address>
        bdb = (struct bdb_info *) 0x81b6d00
        db = (DB *) 0x81f4800
        key = {data = 0xbfbfe6b4, size = 4, ulen = 4, dlen = 0, doff = 0,
  flags = 32}
        data = {data = 0x4, size = 136253136, ulen = 3217024776,
  dlen = 675111498, doff = 675162020, flags = 136007824}
        cursor = (DBC *) 0x283e00fa
        rc = 0
        nrlen = 14
        d = (diskNode *) 0x0
        ptr = 0x4 <Error reading address 0x4: Bad address>
        dlen = "\000"
        idp = 3217024720
#1  0x080cc86e in hdb_tool_dn2id_get (be=0x81b6c00, dn=0x820dba0)
    at tools.c:155
        op = {o_hdr = 0xbfbfe790, o_tag = 0, o_time = 0, o_tincr = 0,
  o_bd = 0x81b6c00, o_req_dn = {bv_len = 0, bv_val = 0x0}, o_req_ndn = {
    bv_len = 0, bv_val = 0x0}, o_request = {oq_add = {rs_e = 0x0,
---Type <return> to continue, or q <return> to quit---
      rs_modlist = 0x0}, oq_bind = {rb_method = 0, rb_cred = {bv_len = 0,
        bv_val = 0x0}, rb_edn = {bv_len = 0, bv_val = 0x0}, rb_ssf = 0,
      rb_tmp_mech = {bv_len = 0, bv_val = 0x0}}, oq_compare = {rs_ava =
0x0},
    oq_modify = {rs_modlist = 0x0, rs_increment = 0}, oq_modrdn = {
      rs_newrdn = {bv_len = 0, bv_val = 0x0}, rs_nnewrdn = {bv_len = 0,
        bv_val = 0x0}, rs_newSup = 0x0, rs_nnewSup = 0x0,
      rs_deleteoldrdn = 0}, oq_search = {rs_scope = 0, rs_deref = 0,
      rs_slimit = 0, rs_tlimit = 0, rs_limit = 0x0, rs_attrsonly = 0,
      rs_attrs = 0x0, rs_filter = 0x0, rs_filterstr = {bv_len = 0,
        bv_val = 0x0}}, oq_abandon = {rs_msgid = 0}, oq_cancel = {
      rs_msgid = 0}, oq_extended = {rs_reqoid = {bv_len = 0, bv_val =
0x0},
      rs_flags = 0, rs_reqdata = 0x0}, oq_pwdexop = {rs_reqoid = {bv_len =
0,
        bv_val = 0x0}, rs_flags = 0, rs_old = {bv_len = 0, bv_val = 0x0},
      rs_new = {bv_len = 0, bv_val = 0x0}, rs_mods = 0x0, rs_modtail =
0x0}},
  o_abandon = 0, o_cancel = 0, o_groups = 0x0, o_do_not_cache = 0 '\0',
  o_is_auth_check = 0 '\0', o_nocaching = 0 '\0',
  o_delete_glue_parent = 0 '\0', o_ctrlflag = '\0' <repeats 31 times>,
  o_controls = 0x0, o_authz = {sai_method = 0, sai_mech = {bv_len = 0,
      bv_val = 0x0}, sai_dn = {bv_len = 0, bv_val = 0x0}, sai_ndn = {
      bv_len = 0, bv_val = 0x0}, sai_ssf = 0, sai_transport_ssf = 0,
    sai_tls_ssf = 0, sai_sasl_ssf = 0}, o_ber = 0x0, o_res_ber = 0x0,
  o_callback = 0x0, o_ctrls = 0x0, o_private = 0x0, o_next = {stqe_next =
0x0}}
        ohdr = {oh_opid = 0, oh_connid = 0, oh_conn = 0x0, oh_msgid = 0,
---Type <return> to continue, or q <return> to quit---
  oh_protocol = 0, oh_tid = 0x0, oh_threadctx = 0x0, oh_tmpmemctx = 0x0,
  oh_tmpmfuncs = 0x818c8e0, oh_log_prefix = '\0' <repeats 49 times>}
        ei = {bei_parent = 0x0, bei_id = 4294967295, bei_lockpad = 0 '\0',
  bei_state = 0, bei_nrdn = {bv_len = 0, bv_val = 0x0}, bei_rdn = {bv_len
= 0,
    bv_val = 0x0}, bei_modrdns = 0, bei_ckids = 0, bei_dkids = 0, bei_e =
0x0,
  bei_kids = 0x0, bei_kids_mutex = 0x0, bei_lrunext = 0x0, bei_lruprev =
0x0}
#2  0x080b4384 in slapadd (argc=5, argv=0xbfbfebf0) at slapadd.c:326
        buf = 0x81f6000 "dn"
        lineno = 4920136
        lmax = 1043
        rc = 0
        text = 0x0
        textbuf = '\0' <repeats 255 times>
        textlen = 256
        progname = 0x814e31c "slapadd"
        manage = 0
        csn = {bv_len = 32,
  bv_val = 0x8194240 "20050809154530Z#000429#00#000000"}
        maxcsn = {bv_len = 32,
  bv_val = 0x8194280 "20050808155052Z#00031c#00#000000"}
        match = -1
        attr = (Attribute *) 0x81fb440
        ctxcsn_e = (Entry *) 0x281b2700
---Type <return> to continue, or q <return> to quit---
        ctxcsn_id = 128682560
        id = 360011
        ret = 672738721
        bvtext = {bv_len = 256, bv_val = 0xbfbfe9f0 ""}
        i = 672874768
        checkvals = 0
        mc = {bv_len = 675230948,
  bv_val = 0x1bfea34 <Error reading address 0x1bfea34: Bad address>}
#3  0x0804c6f1 in main (argc=5, argv=0xbfbfebf0) at main.c:279
        i = 0
        no_detach = 0
        rc = 1
        urls = 0x0
        username = 0x0
        groupname = 0x0
        sandbox = 0x0
        syslogUser = 160
        g_argc = 5
        g_argv = (char **) 0xbfbfebf0
        configfile = 0x0
        configdir = 0x0
        serverName = 0xbfbfecf9 "slapadd"
        serverMode = 1
---Type <return> to continue, or q <return> to quit---
        scp = (struct sync_cookie *) 0x0
        scp_entry = (struct sync_cookie *) 0x0
        serverNamePrefix = 0x813774b ""
        l = 676063648
        __func__ = "main"

(gdb) thread apply all bt

Thread 3 (Thread 2 (LWP 100278)):
#0  0x080efe9c in hdb_dn2id (op=0xbfbfe7f0, txn=0x0, in=0x820dba0,
    ei=0xbfbfe750) at dn2id.c:647
#1  0x080cc86e in hdb_tool_dn2id_get (be=0x81b6c00, dn=0x820dba0)
    at tools.c:155
#2  0x080b4384 in slapadd (argc=5, argv=0xbfbfebf0) at slapadd.c:326
#3  0x0804c6f1 in main (argc=5, argv=0xbfbfebf0) at main.c:279

Thread 2 (Thread 1 (LWP 100288)):
#0  0x283df2fb in pthread_testcancel () from /usr/lib/libpthread.so.1
#1  0x283d7902 in pthread_mutexattr_init () from /usr/lib/libpthread.so.1
#2  0x00000000 in ?? ()
0x080efe9c      647             BDB_ID2DISK( ei->bei_parent->bei_id, &idp
);