[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#6096) 2.4.16 replica segfault
luca@OpenLDAP.org wrote:
> Full_Name: Luca Scamoni
> Version: 2.4.16
> OS: Linux
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (82.63.140.131)
>
>
> Scenario:
> OpenLDAP 2.4.16 with patches for back-bdb (up to may 1st) and syncrepl.
> Master-slave configuration using syncrepl refreshAndPersist. Two hdb databases
> per instance.
> Replica hit assert in slap_modrdn2mods and dumped core.
An assert is not a segfault...
> Since no MODRDN
> operation is ever being performed on entries I wonder why.
Apparently the name of the entry in the consumer doesn't match the name of the
entry received from the provider.
> Anyway, here the bt
> full:
In frame 5, print *entry
> #0 0x004017a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
> No symbol table info available.
> #1 0x004427a5 in raise () from /lib/tls/libc.so.6
> No symbol table info available.
> #2 0x00444209 in abort () from /lib/tls/libc.so.6
> No symbol table info available.
> #3 0x0043bd91 in __assert_fail () from /lib/tls/libc.so.6
> No symbol table info available.
> #4 0x0809c7e6 in slap_modrdn2mods (op=0x380acf0, rs=0x380a910) at
> ../../../servers/slapd/modrdn.c:394
> a_cnt = 0
> d_cnt = 0
> old_rdn = 0x0
> new_rdn = 0x0
> __PRETTY_FUNCTION__ = "slap_modrdn2mods"
> #5 0x080f39f4 in syncrepl_entry (si=0x8fdebf8, op=0x380acf0, entry=0x54eba5f4,
> modlist=0x380aaf4, syncstate=2, syncUUID=0x380ab50, syncCSN=0x4d3e0388)
> at ../../../servers/slapd/syncrepl.c:2278
> noldp = {bv_len = 1294991464, bv_val = 0x4d300048 ""}
> newp = {bv_len = 0, bv_val = 0x4d3691c8 ""}
> i = 4707898
> got_replace = 0
> just_rename = 0
> mod = (Modifications *) 0x54a371fc
> modtail = (Modifications **) 0x1d2d14
> ml = (Modifications **) 0x4565bac8
> m2 = (Modifications *) 0x4d300010
> be = (Backend *) 0x8fdd988
> cb = {sc_next = 0x0, sc_response = 0x80f7618<null_callback>, sc_cleanup
> = 0, sc_private = 0x8fdebf8}
> syncuuid_inserted = 0
> syncUUID_strrep = {bv_len = 36, bv_val = 0x4ae0300c
> "6a0ba116-b291-11da-8006-87f6e679f1bd"}
> rs_search = {sr_type = REP_RESULT, sr_tag = 101, sr_msgid = 0, sr_err =
> 0, sr_matched = 0x0,
> sr_text = 0x813b938 "AttributeDescription contains inappropriate characters",
> sr_ref = 0x0, sr_ctrls = 0x0, sr_un = {sru_sasl = {r_sasldata = 0x0},
> sru_extended = {r_rspoid = 0x0, r_rspdata = 0x0}, sru_search = {r_entry =
> 0x0, r_attr_flags = 0, r_operational_attrs = 0x0, r_attrs = 0x8172ce0,
> r_nentries = 0, r_v2ref = 0x0}}, sr_flags = 4}
> rs_delete = {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_sasl = {r_sasldata = 0x0}, sru_extended = {r_rspoid = 0x0, r_rspdata =
> 0x0}, sru_search = {r_entry = 0x0, r_attr_flags = 0,
> r_operational_attrs = 0x0, r_attrs = 0x0, r_nentries = 0, r_v2ref = 0x0}},
> sr_flags = 0}
> rs_add = {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_sasl = {r_sasldata = 0x0}, sru_extended = {r_rspoid = 0x0, r_rspdata =
> 0x0}, sru_search = {r_entry = 0x0, r_attr_flags = 0,
> r_operational_attrs = 0x0, r_attrs = 0x0, r_nentries = 0, r_v2ref = 0x0}},
> sr_flags = 0}
> rs_modify = {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_sasl = {r_sasldata = 0x0}, sru_extended = {r_rspoid = 0x0, r_rspdata =
> 0x0}, sru_search = {r_entry = 0x0, r_attr_flags = 0,
> r_operational_attrs = 0x0, r_attrs = 0x0, r_nentries = 0, r_v2ref = 0x0}},
> sr_flags = 0}
> f = {f_choice = 163, f_un = {f_un_result = 58763504, f_un_desc =
> 0x380a8f0, f_un_ava = 0x380a8f0, f_un_ssa = 0x380a8f0, f_un_mra = 0x380a8f0,
> f_un_complex = 0x380a8f0}, f_next = 0x0}
> ava = {aa_desc = 0x8f08d50, aa_value = {bv_len = 16, bv_val = 0x45614117
> "j\v¡\026²\221\021Ú\200\006\207öæyñ½"}}
> rc = 0
> pdn = {bv_len = 0, bv_val = 0x0}
> dni = {new_entry = 0x54eba5f4, dn = {bv_len = 112,
> bv_val = 0x4ae03074 "cn=CRL19,ou=Regione Siciliana Certification Authority
> Cittadini,o=Regione Siciliana,c=IT,dc=a,dc=prod,dc=actalis"}, ndn = {
> bv_len = 112, bv_val = 0x4ae030ec "cn=crl19,ou=regione siciliana
> certification authority cittadini,o=regione
> siciliana,c=it,dc=a,dc=prod,dc=actalis"},
> nnewSup = {bv_len = 0, bv_val = 0x4d31cff8 ""}, renamed = 1, delOldRDN = 0,
> modlist = 0x380aaf4, mods = 0x456172e0, oldNattr = 0x54a38d74,
> oldDesc = 0x8f0ce90, newDesc = 0x0}
> retry = 1
> freecsn = 1
> __PRETTY_FUNCTION__ = "syncrepl_entry"
> #6 0x080eebcf in do_syncrep2 (op=0x380acf0, si=0x8fdebf8) at
> ../../../servers/slapd/syncrepl.c:892
> rctrlp = (LDAPControl *) 0x45635200
> rctrls = (LDAPControl **) 0x4d371e08
> berbuf = {
> buffer = "\002\000\001", '\0'<repeats 17 times>, "\020AaE]AaE]AaE", '\0'
> <repeats 16 times>, "¼«\200\003
> *T\000\000\000\000\000\017\000\000\000ô/T\000\017\000\000\000?}S\000Ü«\200\003ô/T\000\a\000\000\000\000\000\000\000\001\000\000\000\020²\200\003È\200\0038¬\200\003fg\016\b\020²\200\003Õf\016\b\004¬\200\003\000\000\000\000ô/T\000È\200\003¤±\200\003\030¬\200\003\"ÙE\000ð\200\003\000\001\000\000zª\022\b,¬\200\003@ç\026\b8¬\200\003\211°\a\bð\200\003'~\022\000zª\022\b\2046s\000\000\000\000\000¤±\200\003\001\000\000\000³f`\0008>\027\b\204"...,
> ialign = 65538, lalign = 65538, falign = 9.18382988e-41,
> dalign = 3.2380074297143616e-319, palign = 0x10002<Address 0x10002 out of
> bounds>}
> ber = (BerElement *) 0x380ab70
> msg = (LDAPMessage *) 0x4d3741f0
> retoid = 0x0
> retdata = (struct berval *) 0x0
> entry = (Entry *) 0x54eba5f4
> syncstate = 2
> syncUUID = {bv_len = 16, bv_val = 0x45614117
> "j\v¡\026²\221\021Ú\200\006\207öæyñ½"}
> syncCookie = {ctxcsn = 0x4d3e0388, octet_str = {bv_len = 52, bv_val =
> 0x4d368850 "rid=002,csn=20090507070014.234380Z#000000#000#000000"}, rid = 2,
> sid = -1, numcsns = 1, sids = 0x4d3fa4a8, sc_next = {stqe_next = 0x0}}
> syncCookie_req = {ctxcsn = 0x45661888, octet_str = {bv_len = 52, bv_val
> = 0x4d366330 "rid=002,csn=20090507070013.853843Z#000000#000#000000"},
> rid = 2, sid = -1, numcsns = 1, sids = 0x4d3655f8, sc_next = {stqe_next =
> 0x0}}
> cookie = {bv_len = 52, bv_val = 0x45614129
> "rid=002,csn=20090507070014.234380Z#000000#000#000000"}
> rc = 0
> err = 0
> len = 52
> psub = (struct berval *) 0x8fde868
> modlist = (Modifications *) 0x4565ba00
> match = 4676822
> m = 58764284
> tout_p = (struct timeval *) 0x380aae0
> tout = {tv_sec = 0, tv_usec = 0}
> refreshDeletes = 0
> syncUUIDs = 0x0
> si_tag = 813739759
> #7 0x080f081e in do_syncrepl (ctx=0x380b210, arg=0x8fdee98) at
> ../../../servers/slapd/syncrepl.c:1357
> rtask = (struct re_s *) 0x8fdee98
> si = (syncinfo_t *) 0x8fdebf8
> conn = {c_struct_state = 0, c_conn_state = 0, c_conn_idx = -1, c_sd = 0,
> c_close_reason = 0x0, c_mutex = {__m_reserved = 0, __m_count = 0,
> __m_owner = 0x0, __m_kind = 0, __m_lock = {__status = 0, __spinlock = 0}},
> c_sb = 0x0, c_starttime = 0, c_activitytime = 0, c_connid = 4294967295,
> c_peer_domain = {bv_len = 0, bv_val = 0x8123930 ""}, c_peer_name = {bv_len =
> 0, bv_val = 0x8123930 ""}, c_listener = 0x816e080, c_sasl_bind_mech = {
> bv_len = 0, bv_val = 0x0}, c_sasl_dn = {bv_len = 0, bv_val = 0x0},
> c_sasl_authz_dn = {bv_len = 0, bv_val = 0x0}, c_authz_backend = 0x0,
> c_authz_cookie = 0x0, c_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}, c_protocol = 0, c_ops = {stqh_first = 0x0, stqh_last = 0x0},
> c_pending_ops = {stqh_first = 0x0, stqh_last = 0x0}, c_write1_mutex =
> {__m_reserved = 0, __m_count = 0, __m_owner = 0x0, __m_kind = 0, __m_lock = {
> __status = 0, __spinlock = 0}}, c_write1_cv = {__c_lock = {__status = 0,
> __spinlock = 0}, __c_waiting = 0x0, __padding = '\0'<repeats 27 times>,
> __align = 0}, c_write2_mutex = {__m_reserved = 0, __m_count = 0, __m_owner =
> 0x0, __m_kind = 0, __m_lock = {__status = 0, __spinlock = 0}},
> c_write2_cv = {__c_lock = {__status = 0, __spinlock = 0}, __c_waiting = 0x0,
> __padding = '\0'<repeats 27 times>, __align = 0}, c_currentber = 0x0,
> c_writers = 0, c_sasl_bind_in_progress = 0 '\0', c_writewaiter = 0 '\0',
> c_is_tls = 0 '\0', c_needs_tls_accept = 0 '\0', c_sasl_layers = 0 '\0',
> c_sasl_done = 0 '\0', c_sasl_authctx = 0x0, c_sasl_sockctx = 0x0, c_sasl_extra
> = 0x0, c_sasl_bindop = 0x0, c_pagedresults_state = {ps_be = 0x0,
> ps_size = 0, ps_count = 0, ps_cookie = 0, ps_cookieval = {bv_len = 0, bv_val
> = 0x0}}, c_n_ops_received = 0, c_n_ops_executing = 0, c_n_ops_pending = 0,
> c_n_ops_completed = 0, c_n_get = 0, c_n_read = 0, c_n_write = 0, c_extensions
> = 0x0, c_clientfunc = 0, c_clientarg = 0x0,
> c_send_ldap_result = 0x808e8de<slap_send_ldap_result>, c_send_search_entry =
> 0x808f65a<slap_send_search_entry>,
> c_send_search_reference = 0x80917d2<slap_send_search_reference>,
> c_send_ldap_extended = 0x808f180<slap_send_ldap_extended>,
> c_send_ldap_intermediate = 0x808f420<slap_send_ldap_intermediate>}
> opbuf = {ob_op = {o_hdr = 0x380adc8, o_tag = 108, o_time = 1241679614,
> o_tincr = 9, o_bd = 0x8fdd988, o_req_dn = {bv_len = 112,
> bv_val = 0x4ae03074 "cn=CRL19,ou=Regione Siciliana Certification Authority
> Cittadini,o=Regione Siciliana,c=IT,dc=a,dc=prod,dc=actalis"}, o_req_ndn = {
> bv_len = 112,
> bv_val = 0x4ae030ec "cn=crl19,ou=regione siciliana certification authority
> cittadini,o=regione siciliana,c=it,dc=a,dc=prod,dc=actalis"}, o_request = {
> oq_add = {rs_modlist = 0x0, rs_e = 0x0}, oq_bind = {rb_method = 0, rb_cred
> = {bv_len = 0, bv_val = 0x0}, rb_edn = {bv_len = 0,
> bv_val = 0x4d3691c8 ""}, rb_ssf = 0, rb_mech = {bv_len = 1295110136,
> bv_val = 0x380a750 ""}}, oq_compare = {rs_ava = 0x0}, oq_modify = {
> rs_mods = {rs_modlist = 0x0, rs_no_opattrs = 0 '\0'}, rs_increment = 0},
> oq_modrdn = {rs_mods = {rs_modlist = 0x0, rs_no_opattrs = 0 '\0'},
> rs_deleteoldrdn = 0, rs_newrdn = {bv_len = 0, bv_val = 0x4d3691c8 ""},
> rs_nnewrdn = {bv_len = 0, bv_val = 0x4d31cff8 ""}, rs_newSup = 0x380a750,
> rs_nnewSup = 0x380a8b4}, oq_search = {rs_scope = 0, rs_deref = 0,
> rs_slimit = 0, rs_tlimit = 0, rs_limit = 0x4d3691c8, rs_attrsonly = 0,
> rs_attrs = 0x4d31cff8, rs_filter = 0x380a750, rs_filterstr = {bv_len =
> 58763444,
> bv_val = 0x4ae0303c
> "(entryUUID=6a0ba116-b291-11da-8006-87f6e679f1bd)"}}, 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_extended = {rs_reqoid = {bv_len = 0, bv_val = 0x0},
> rs_flags = 0, rs_reqdata = 0x0}, rs_old = {bv_len = 1295421896, bv_val
> = 0x0}, rs_new = {bv_len = 1295110136, bv_val = 0x380a750 ""},
> rs_mods = 0x380a8b4, rs_modtail = 0x4ae0303c}}, o_abandon = 0, o_cancel
> = 0, o_groups = 0x0, o_do_not_cache = 0 '\0', o_is_auth_check = 0 '\0',
> o_dont_replicate = 0 '\0', o_acl_priv = ACL_NONE, o_nocaching = 0 '\0',
> o_delete_glue_parent = 0 '\0', o_no_schema_check = 1 '\001',
> o_no_subordinate_glue = 0 '\0', o_ctrlflag = '\0'<repeats 14 times>,
> "\002", '\0'<repeats 16 times>, o_controls = 0x380aef0, o_authz = {
> sai_method = 0, sai_mech = {bv_len = 0, bv_val = 0x0}, sai_dn = {bv_len =
> 34, bv_val = 0x8fde900 "cn=Manager,dc=a,dc=prod,dc=actalis"}, sai_ndn = {
> bv_len = 34, bv_val = 0x8fde940 "cn=manager,dc=a,dc=prod,dc=actalis"},
> sai_ssf = 0, sai_transport_ssf = 0, sai_tls_ssf = 0, sai_sasl_ssf = 0},
> o_ber = 0x0, o_res_ber = 0x0, o_callback = 0x380aa20, o_ctrls = 0x0, o_csn =
> {bv_len = 40,
> bv_val = 0x4ae03164 "20090507070014.234380Z#000000#000#000000"}, o_private
> = 0x0, o_extra = {slh_first = 0x0}, o_next = {stqe_next = 0x0}}, ob_hdr = {
> oh_opid = 0, oh_connid = 4294967295, oh_conn = 0x380af70, oh_msgid = 0,
> oh_protocol = 0, oh_tid = 58768288, oh_threadctx = 0x380b210,
> oh_tmpmemctx = 0x94bd878, oh_tmpmfuncs = 0x8172f00, oh_counters = 0x81b65e0,
> oh_log_prefix = "conn=-1 op=0", '\0'<repeats 243 times>}, ob_controls = {
> 0x380ab30, 0x0<repeats 31 times>}}
> op = (Operation *) 0x380acf0
> rc = 0
> dostop = 0
> s = 15
> i = 2
> defer = 1
> fail = 0
> be = (Backend *) 0x8fdd988
> #8 0x08079db6 in connection_read_thread (ctx=0x380b210, argv=0xf) at
> ../../../servers/slapd/connection.c:1243
> rc = 0
> cri = {op = 0x0, func = 0x80f0371<do_syncrepl>, arg = 0x8fdee98, ctx =
> 0x380b210, nullop = 0}
> s = 15
> #9 0x00605389 in ldap_int_thread_pool_wrapper (xpool=0x8f0eab0) at
> ../../../libraries/libldap_r/tpool.c:663
> pool = (struct ldap_int_thread_pool_s *) 0x8f0eab0
> task = (ldap_int_thread_task_t *) 0x94bb930
> work_list = (ldap_int_tpool_plist_t *) 0x8f0eb30
> ctx = {ltu_id = 58768288, ltu_key = {{ltk_key = 0x80793bb, ltk_data =
> 0x94bd788, ltk_free = 0x80791ab<conn_counter_destroy>}, {
> ltk_key = 0x80e66d5, ltk_data = 0x94bd878, ltk_free = 0x80e64e8
> <slap_sl_mem_destroy>}, {ltk_key = 0x90204a0, ltk_data = 0x942e8b8,
> ltk_free = 0x225796<bdb_reader_free>}, {ltk_key = 0x8092ceb, ltk_data =
> 0x9439e10, ltk_free = 0x8092c48<slap_op_q_destroy>}, {ltk_key = 0x90229a0,
> ltk_data = 0x943a4e0, ltk_free = 0x225796<bdb_reader_free>}, {ltk_key =
> 0x213b96, ltk_data = 0x457f1008, ltk_free = 0x213b6b<search_stack_free>}, {
> ltk_key = 0x0, ltk_data = 0x0, ltk_free = 0}<repeats 26 times>}}
> kctx = (ldap_int_thread_userctx_t *) 0x0
> i = 32
> keyslot = 158
> hash = 5957790
> __PRETTY_FUNCTION__ = "ldap_int_thread_pool_wrapper"
> #10 0x001263cc in start_thread () from /lib/tls/libpthread.so.0
> No symbol table info available.
> #11 0x004e3c3e in clone () from /lib/tls/libc.so.6
> No symbol table info available.
>
> soon after that (about 1 minute) master stopped accepting connection and load
> average jumped to 18.
>
> Last rows of replica log:
> May 7 09:00:14 quercia02 slapd[13339]: slap_queue_csn: queing 0x4c1db4a0
> 20090507070013.733132Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: conn=113 op=1705 SEARCH RESULT tag=101
> err=0 nentries=1 text=
> May 7 09:00:14 quercia02 slapd[13339]: slap_graduate_commit_csn: removing
> 0x548befa8 20090507070013.733132Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: do_syncrep2:
> cookie=rid=002,csn=20090507070013.853843Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: syncrepl_entry: rid=002
> LDAP_RES_SEARCH_ENTRY(LDAP_SYNC_MODIFY)
> May 7 09:00:14 quercia02 slapd[13339]: syncrepl_entry: rid=002 be_search (0)
> May 7 09:00:14 quercia02 slapd[13339]: syncrepl_entry: rid=002
> cn=CRL37,ou=Regione Siciliana Certification Authority Cittadini,o=Regione
> Siciliana,c=IT,dc=a
> ,dc=prod,dc=actalis
> May 7 09:00:14 quercia02 slapd[13339]: slap_queue_csn: queing 0x4d32e218
> 20090507070013.853843Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: slap_graduate_commit_csn: removing
> 0x4d3657d8 20090507070013.853843Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: syncrepl_entry: rid=002 be_modify
> cn=CRL37,ou=Regione Siciliana Certification Authority Cittadini,o=Regione
> Siciliana
> ,c=IT,dc=a,dc=prod,dc=actalis (0)
> May 7 09:00:14 quercia02 slapd[13339]: slap_queue_csn: queing 0x4d32e218
> 20090507070013.853843Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: slap_graduate_commit_csn: removing
> 0x45659710 20090507070013.853843Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: do_syncrep2:
> cookie=rid=002,csn=20090507070014.234380Z#000000#000#000000
> May 7 09:00:14 quercia02 slapd[13339]: syncrepl_entry: rid=002
> LDAP_RES_SEARCH_ENTRY(LDAP_SYNC_MODIFY)
> May 7 09:00:14 quercia02 slapd[13339]: syncrepl_entry: rid=002 be_search (0)
> May 7 09:00:14 quercia02 slapd[13339]: syncrepl_entry: rid=002
> May 7 09:00:14 quercia02 slapd[13339]: slap_queue_csn: queing 0x45663bb0
> 20090507070014.234380Z#000000#000#000000
>
> Any further information available upon request
> TIA
>
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/