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

Re: Changing schema OID values in cn=config



On 28/11/2011 9:24 ÎÎ, Quanah Gibson-Mount wrote:

2.4.26 is probably fine. You shouldn't need to take a core dump, just a full backtrace of the hung process.

I.e., gdb /path/to/slapd pid

OK, I hope I've done it right (I'm inexperienced with gdb).

Please check whether sufficient information has been logged, so I can file a meaningful ITS.

If additional info would be required, please provide details.

The debugging session follows.

Nick

First I successfully changed OID value xxxxx.000 to 0. No error.

Then I tried to change OID value xxxxx.001 to 1 and program stalled.

Here is the gdb output. First is a backtrace before the error occurs:

=============================
Initialization
=============================

[root@ldap ~]# gdb /usr/local/openldap/libexec/slapd 2295
GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-37.el5_7.1)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/local/openldap/libexec/slapd...Reading symbols from /usr/lib/debug/usr/local/openldap/libexec/slapd.debug...done.
done.
Attaching to program: /usr/local/openldap/libexec/slapd, process 2295
Reading symbols from /lib64/libuuid.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/libuuid.so.1
Reading symbols from /usr/local/berkeleydb/lib64/libdb-4.6.so...(no debugging symbols found)...done.
Loaded symbols for /usr/local/berkeleydb/lib64/libdb-4.6.so
Reading symbols from /lib64/libpthread.so.0...(no debugging symbols found)...done.
[Thread debugging using libthread_db enabled]
[New Thread 0x43d36940 (LWP 3136)]
[New Thread 0x43535940 (LWP 3123)]
[New Thread 0x42d34940 (LWP 2656)]
[New Thread 0x42533940 (LWP 2655)]
[New Thread 0x41d32940 (LWP 2297)]
Loaded symbols for /lib64/libpthread.so.0
Reading symbols from /usr/lib64/libsasl2.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libsasl2.so.2
Reading symbols from /lib64/libssl.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib64/libssl.so.6
Reading symbols from /lib64/libcrypto.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib64/libcrypto.so.6
Reading symbols from /lib64/libresolv.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libresolv.so.2
Reading symbols from /usr/lib64/libltdl.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libltdl.so.3
Reading symbols from /lib64/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib64/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/libcrypt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/libcrypt.so.1
Reading symbols from /usr/lib64/libgssapi_krb5.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libgssapi_krb5.so.2
Reading symbols from /usr/lib64/libkrb5.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libkrb5.so.3
Reading symbols from /lib64/libcom_err.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libcom_err.so.2
Reading symbols from /usr/lib64/libk5crypto.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libk5crypto.so.3
Reading symbols from /lib64/libz.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/libz.so.1
Reading symbols from /usr/lib64/libkrb5support.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/libkrb5support.so.0
Reading symbols from /lib64/libkeyutils.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/libkeyutils.so.1
Reading symbols from /lib64/libselinux.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/libselinux.so.1
Reading symbols from /lib64/libsepol.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib64/libsepol.so.1
Reading symbols from /lib64/libnss_files.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libnss_files.so.2
Reading symbols from /lib64/libnss_dns.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/libnss_dns.so.2
Reading symbols from /usr/lib64/sasl2/libanonymous.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/sasl2/libanonymous.so.2
Reading symbols from /usr/lib64/sasl2/libsasldb.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/sasl2/libsasldb.so.2
Reading symbols from /usr/lib64/sasl2/libplain.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/sasl2/libplain.so.2
Reading symbols from /usr/lib64/sasl2/liblogin.so.2...(no debugging symbols found)...done.
Loaded symbols for /usr/lib64/sasl2/liblogin.so.2

warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fffb1ffd000
0x0000003940007b35 in pthread_join () from /lib64/libpthread.so.0

=========================================================
A backtrace after changing 000 to 0
=========================================================

(gdb) backtrace full
#0  0x0000003940007b35 in pthread_join () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x000000000043613d in slapd_daemon () at daemon.c:2922
        i = -4
        rc = <value optimized out>
        listener_tid = 0xd1343b0
#2 0x00000000004234bb in main (argc=<value optimized out>, argv=0x7fffb1f79508) at main.c:983
        i = 216361728
        no_detach = 0
        rc = 0
        urls = <value optimized out>
        username = 0xcbe7460 "localhost"
        groupname = 0xcbe73b0 "`\232\276\f"
        sandbox = 0x0
        syslogUser = 160
        configfile = <value optimized out>
        configdir = <value optimized out>
        serverName = 0x9 <Address 0x9 out of bounds>
        scp = <value optimized out>
        scp_entry = <value optimized out>
        debug_unknowns = 0x0
        syslog_unknowns = 0x0
        l = <value optimized out>
        slapd_pid_file_unlink = 1
        slapd_args_file_unlink = 1
        firstopt = <value optimized out>
        __PRETTY_FUNCTION__ = "main"


===============================================================
I submit a change of OID xxxxx.001 to 1 and an error occurs
===============================================================

(gdb) continue
Continuing.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x42533940 (LWP 2655)]
0x000000000047ab0c in at_next (at=0x42530498) at at.c:366
366             *at = LDAP_STAILQ_NEXT(*at,sat_next);
(gdb) backtrace full
#0  0x000000000047ab0c in at_next (at=0x42530498) at at.c:366
        __PRETTY_FUNCTION__ = "at_next"
#1  0x000000000042c816 in config_generic (c=0x42530690) at bconfig.c:1667
        i = 0
        at = 0x0
        prev = 0x0
        i = <value optimized out>
        __PRETTY_FUNCTION__ = "config_generic"
#2 0x00000000004317eb in config_set_vals (Conf=0x81e1e0, c=0x42530690) at config.c:334
        rc = <value optimized out>
        arg_type = 0
        ptr = <value optimized out>
#3 0x00000000004355fd in config_parse_add (ct=0x81e1e0, c=0x42530690, valx=<value optimized out>) at config.c:678
        rc = <value optimized out>
#4 0x0000000000427fe9 in config_modify_add (ct=0x81e1e0, ca=0x42530690, ad=<value optimized out>, i=1) at bconfig.c:5420
        rc = <value optimized out>
#5 0x000000000042a486 in config_modify_internal (op=0xd141780, rs=0x42532ca0) at bconfig.c:5689
        a = <value optimized out>
        colst = 0xd141580
        dels = <value optimized out>
        ml = <value optimized out>
        e = 0xcc66548
        rc = <value optimized out>
        oc_at = <value optimized out>
        s = 0xd05edb0
        ct = 0x81e1e0
        i = 2
        nocs = 2
#6  config_back_modify (op=0xd141780, rs=0x42532ca0) at bconfig.c:5802
        cfb = 0x82a640
        ce = <value optimized out>
        last = <value optimized out>
        ml = <value optimized out>
        ca = {argc = 19, argv = 0xd378f20, argv_size = 513,
line = 0xd370103 "( 1.3.6.1.4.1.25260.1.001 NAME 'maildrop' DESC 'Defines the address mail goes to' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )", tline = 0xd35ebc0 "(", fname = 0x587799 "slapd", lineno = 0, log = "olcAttributeTypes: value #1", '\000' <repeats 4096 times>, reply = {err = 0, msg = "\000lcAttributeTypes: Duplicate attributeType: \"1.3.6.1.4.1.25260.1.0\"", '\000' <repeats 188 times>}, depth = 0, valx = 1, values = { v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_ber_t = 0, v_string = 0x0, v_bv = {bv_len = 0, bv_val = 0x0}, v_dn = {vdn_dn = {bv_len = 0, bv_val = 0x0}, vdn_ndn = {bv_len = 0, bv_val = 0x0}}, v_ad = 0x0}, rvalue_vals = 0x0, rvalue_nvals = 0x0, op = 0, type = 25, ca_op = 0xd141780, be = 0x82c1a0, bi = 0x0, ca_entry = 0xcc66548, ca_private = 0xccbfaf0, cleanup = 0, table = Cft_Schema}
---Type <return> to continue, or q <return> to quit---
rdn = {bv_len = 2, bv_val = 0xccebc10 "cn={5}postfix,cn=schema,cn=config"}
        rad = 0xcc14de0
        do_pause = 1
#7 0x0000000000452a07 in fe_op_modify (op=0xd141780, rs=0x42532ca0) at modify.c:303
        repl_user = <value optimized out>
        bd = 0x82c1a0
textbuf = "@\310\301\f", '\000' <repeats 12 times>, "@\310\301\f\000\000\000\000\316YE\000\000\000\000\000\020\005\024\r\000\000\000\000\260k\300\f\000\000\000\000\002\000\000\000\000\000\000\000\022\005\024\r\000\000\000\000\001\000\000\000\000\000\000\000\021\005\024\r\000\000\000\000\003\000\000\000\000\000\000\000\020\005\024\r\000\000\000\000\260\000\000\000\000\000\000\000P\352\065\r", '\000' <repeats 20 times>, "\020E7\r", '\000' <repeats 12 times>"\360, \311\301\f\000\000\000\000 ", '\000' <repeats 15 times>, "\023$E\000\000\000\000\000\300\034\024\r\000\000\000\000\000\001\000\000\000\000\000\000P+SB\000\000\000\000\300,SB\000\000\000\000\200\027\024\r\000\000\000\000\001\000\000\000\000\000\000\000\270\027\024\r\000\000\000\000\250\027\024\r"... #8 0x0000000000453172 in do_modify (op=0xd141780, rs=0x42532ca0) at modify.c:177 dn = {bv_len = 33, bv_val = 0xd3621b9 "cn={5}postfix,cn=schema,cn=config"} textbuf = "\357\064\066\r\000\000\000\000@\035$\r\000\000\000\000\b\000\000\000\000\000\000\000\251oW\000\000\000\000\000H:\265?9\000\000\000\360+SB\000\000\000\000\370\001\000\000\000\000\000\000!\000\000\000\000\000\000\000\023", '\000' <repeats 15 times>, "0\033\067\r\000\000\000\000\200K\351\f\000\000\000\000\060\033\067\r\000\000\000\000\020-SB\000\000\000\000P\000\000\000\000\000\000\000\343\u0544?9\000\000\000(\000\000\000\060\000\000\000\260,SB\000\000\000\000\360+SB\000\000\000\000\343\u0544?\004\000\000\000(\000\000\000\060\000\000\000\320,SB\000\000\000\000\020,SB\000\000\000\000\357\064\066\r\000\000\000\000\300$\023\r\000\000\000\000\357\064\066\r\000\000\000\000\b\000\000\000\000\000\000\000\240\070SB\000\000\000\000\300"...
        tmp = 0x0
#9 0x000000000043b965 in connection_operation (ctx=0x42532d70, arg_v=<value optimized out>) at connection.c:1138
        rc = <value optimized out>
        cancel = <value optimized out>
        op = 0xd141780
rs = {sr_type = REP_RESULT, sr_tag = 0, sr_msgid = 0, sr_err = 0, sr_matched = 0x0, sr_text = 0x0, sr_ref = 0x0, sr_ctrls = 0x0, sr_un = { sru_search = {r_entry = 0x0, r_attr_flags = 0, r_operational_attrs = 0x0, r_attrs = 0x0, r_nentries = 0, r_v2ref = 0x0}, sru_sasl = { r_sasldata = 0x0}, sru_extended = {r_rspoid = 0x0, r_rspdata = 0x0}}, sr_flags = 0}
        tag = 102
        opidx = SLAP_OP_MODIFY
        conn = 0xce94b80
        memctx = 0xd141cc0
        memctx_null = 0x0
        __PRETTY_FUNCTION__ = "connection_operation"
#10 0x000000000054d68c in ldap_int_thread_pool_wrapper (xpool=0xcc18380) at tpool.c:685
        task = 0xd13faa0
        work_list = <value optimized out>
ctx = {ltu_id = 1112750400, ltu_key = {{ltk_key = 0x43a8d0, ltk_data = 0xd141bb0, ltk_free = 0x43a9a0 <conn_counter_destroy>}, {ltk_key = 0x48c440, ltk_data = 0xd141cc0, ltk_free = 0x48c320 <slap_sl_mem_destroy>}, {ltk_key = 0x44e220, ltk_data = 0x0, ltk_free = 0x44e000 <slap_op_q_destroy>}, {ltk_key = 0xce36e30, ltk_data = 0xd241d70, ltk_free = 0x4e0010 <bdb_reader_free>}, {ltk_key = 0x0, ltk_data = 0x0,
              ltk_free = 0} <repeats 28 times>}}
        kctx = <value optimized out>
        keyslot = 174
---Type <return> to continue, or q <return> to quit---
        hash = <value optimized out>
        __PRETTY_FUNCTION__ = "ldap_int_thread_pool_wrapper"
#11 0x000000394000673d in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#12 0x000000393f8d44bd in clone () from /lib64/libc.so.6
No symbol table info available.
(gdb) quit
A debugging session is active.

        Inferior 1 [process 2295] will be detached.

Quit anyway? (y or n) y
Detaching from program: /usr/local/openldap/libexec/slapd, process 2295