Special thanks to Andrey Ivanov for the discussion. It was very
helpful. I revised the patch to adjust the parent DN if it's different
from the existing one in DB.
https://bugzilla.redhat.com/show_bug.cgi?id=628300https://bugzilla.redhat.com/attachment.cgi?id=442069&action=diffhttps://bugzilla.redhat.com/attachment.cgi?id=442069&action=diff
Description: Code for supporting entrydn (added for Bug 578296)
contained a bug. If an entry was found in the entry cache,
id2entry_ext returned it without adding the entrydn attribute
value. This patch fixes the problem.
In addition, if the parent DN in the to-be-added entry is not
identical to the real parent DN (e.g., dc=eXAmple vs. dc=example),
replace the string with the real parent DN. This check& replace
is done only when the parent entry is in the entry cache not to
sacrifice the performance.
And sorry to dear Reviewers, I could not resist fixing 3 indentations...
--noriko
https://bugzilla.redhat.com/show_bug.cgi?id=627738https://bugzilla.redhat.com/attachment.cgi?id=441634&action=diffhttps://bugzilla.redhat.com/attachment.cgi?id=441634&action=edit
These are not the fixes for the subject of this bug (I'm not yet convinced that the subject is a bug...), but found while looking into the dn cache.
Description:
1) id2entry_add_ext replaces an dn instance in the dn cache even if
the DN value is identical. Replace it only when they don't match.
File: ldap/servers/slapd/back-ldbm/id2entry.c
2) Modifying the dn cache related labels:
dnEntrycachehits
dnEntrycachetries
dnEntrycachehitratio
dnCurrententrycachesize
dnMaxentrycachesize
dnCurrententrycachecount
dnMaxentrycachecount
===>
dncachehits
dncachetries
dncachehitratio
currentdncachesize
maxdncachesize
currentdncachecount
maxdncachecount
File: ldap/servers/slapd/back-ldbm/monitor.c
https://bugzilla.redhat.com/show_bug.cgi?id=553066https://bugzilla.redhat.com/attachment.cgi?id=441624&action=diffhttps://bugzilla.redhat.com/attachment.cgi?id=441624&action=edit
Bug Description: a special index type "subtree" is introduced for
entryrdn. The DS Console does not spport the index type, and
the index page issues an error "unkown index type<subtree>".
Fix Description: The index type is special and is available only
for entryrdn. Also, entryrdn cannot have any other index type(s).
Thus, there is no much benefit to show the index type on the index
page on Console. This patch skips showing entryrdn index name and
the subtree index type.
File: admin/dirserv/panel/IndexManagementPanel.java
Thanks,
--noriko
https://bugzilla.redhat.com/show_bug.cgi?id=531642https://bugzilla.redhat.com/attachment.cgi?id=441366&action=diffhttps://bugzilla.redhat.com/attachment.cgi?id=441366&action=edit
Fix description:
1. Introduced a config parameter nsslapd-entryusn-global: on|off to
enable | disable the global mode. By default, off.
In the global mode, search on root dse returns "lastusn:<num>"
without the backend subtype (e.g., "lastusn;userroot:<num>")
2. Added slapi_get_next_suffix_ext to mapping_tree.c, which visits
children as well as siblings in the mapping tree.
(Note: slapi_get_next_suffix does just siblings.)
3. import (ldif2db) adds "entryusn: 0" to every entry unless the
entry already contains the entryusn attribute.
4. ldbm_back_delete, ldbm_back_modify, ldbm_back_modrdn: set
ldap_result_code to pblock so that bepost plugin could see if
the operation was successful or not.
See also http://directory.fedoraproject.org/wiki/Entry_USN#Global_mode
Thanks,
--noriko
2010/8/25 Rich Megginson <rmeggins(a)redhat.com>
> Andrey Ivanov wrote:
>
>>
>>
>> 2010/8/25 Rich Megginson <rmeggins(a)redhat.com <mailto:rmeggins@redhat.com
>> >>
>>
>>
>> Andrey Ivanov wrote:
>>
>> I wanted to configure the replication over SSL (both with SSL
>> mechanism which was available in previous versions) and by TLS
>> using
>> simple bind (both in multimaster or single master-dedicated
>> consumer models).
>>
>> I've tried to configure it with command line and with the
>> console. The
>> configuration and the initial initialisation are ok/
>>
>> But when i continue and try to make a change on a master the
>> consumer
>> server crashes. So the total replica initialisation is ok
>> but even a
>> single incremental update crashes the consumer server. And
>> there is
>> nothing helpful in logs. I haven't tried the 1.2.6.rc7
>> version, i've
>> tried the latest code version (as of today). Don't know if it
>> matters
>> (there seem to be a lot of coverity defects that have
>> been fixed
>> between rc7 and a1).
>>
>> Can you get a core file and a stack trace?
>>
>> Rich, just as i thought, this crash happens only with today's snapshot of
>> 1.2.7.a1 version only. I've compiled 1.2.6.rc7 and the replication works
>> smoothly and without any problem. I didn't have a lot of time to generate a
>> stack trace because i was migrating our production servers. I thought the
>> latest build should be stable but it seems that the changes between 6rc7 and
>> 7a1 introduce some problems with incremental replication as well as with
>> apostrophs in DN (my second mail). So for now i will migrate to 1.2.6.rc7.
>> I'll test the a1 version later when i will have time...
>>
> Thanks for the confirmation. Yeah, the 1.2.7 (master) is unstable right
> now. There have been a lot of changes going in that haven't been fully
> tested with our test suite (we're also having to update the test suite).
>
I wanted to make a debug build of the server to test the incremental
replication crash i've seen yesterday and used the following commands :
export CFLAGS="-g"
export CXXFLAGS="-g"
export USE_64=1
./configure --prefix=/Local/dirsrv --enable-debug --enable-autobind
Are these parameters correct? Is there any other way to generate the debug
info?
However the debug build i've obtained (from the stable 1.2.6.rc7) in this
way crashes during its startup if i activate USN plugin with ldapmodify
just after setup-ds-admin, then stop-start:
dn: cn=USN,cn=plugins,cn=config
changetype: modify
replace: nsslapd-pluginEnabled
nsslapd-pluginEnabled: on
Non-debug build does not crash, by the way... I think it's because of the
assertion being executed only in debug builds?
Here is the stack trace :
[root@ldap-model Admin]# gdb /Local/dirsrv/sbin/ns-slapd
GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-23.el5_5.2)
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 /Local/dirsrv/sbin/ns-slapd...done.
(gdb) set follow-fork-mode child
(gdb) set arg -D /Local/dirsrv/etc/dirsrv/slapd-dmz -i
/Local/dirsrv/var/run/dirsrv/slapd-dmz.pid -w
/Local/dirsrv/var/run/dirsrv/slapd-dmz.startpid
(gdb) run
Starting program: /Local/dirsrv/sbin/ns-slapd -D
/Local/dirsrv/etc/dirsrv/slapd-dmz -i
/Local/dirsrv/var/run/dirsrv/slapd-dmz.pid -w
/Local/dirsrv/var/run/dirsrv/slapd-dmz.startpid
[Thread debugging using libthread_db enabled]
[New process 32401]
[Thread debugging using libthread_db enabled]
[New Thread 0x40a00940 (LWP 32402)]
[New Thread 0x41401940 (LWP 32403)]
[New Thread 0x41e02940 (LWP 32404)]
[New Thread 0x42803940 (LWP 32405)]
[New Thread 0x43204940 (LWP 32406)]
[New Thread 0x43c05940 (LWP 32407)]
[New Thread 0x44606940 (LWP 32408)]
[New Thread 0x45007940 (LWP 32409)]
[New Thread 0x45a08940 (LWP 32410)]
Program received signal SIGABRT, Aborted.
[Switching to Thread 0x2aaaabee5e00 (LWP 32401)]
0x000000389d430265 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x000000389d430265 in raise () from /lib64/libc.so.6
#1 0x000000389d431d10 in abort () from /lib64/libc.so.6
#2 0x00002aaaab21d61c in PR_Assert () from /usr/lib64/libnspr4.so
#3 0x00002aaaaab33655 in slapi_mods_add_one_element (smods=0x7fffffff9ee0)
at ldap/servers/slapd/modutil.c:178
#4 0x00002aaaaab336de in slapi_mods_insert_at (smods=0x7fffffff9ee0,
mod=0xacc100, pos=3) at ldap/servers/slapd/modutil.c:196
#5 0x00002aaaaab33974 in slapi_mods_add_ldapmod (smods=0x7fffffff9ee0,
mod=0xacc100) at ldap/servers/slapd/modutil.c:270
#6 0x00002aaaaab33aa2 in slapi_mods_add_modbvps (smods=0x7fffffff9ee0,
modtype=130, type=0x2aaab1af998c "entryusn", bvps=0x7fffffff9ed0) at
ldap/servers/slapd/modutil.c:309
#7 0x00002aaab1af84f4 in _usn_mod_next_usn (mods=0x7fffffff9f30,
be=0x909900) at ldap/servers/plugins/usn/usn.c:378
#8 0x00002aaab1af8773 in usn_bepreop_modify (pb=0x7fffffffe3f0) at
ldap/servers/plugins/usn/usn.c:478
#9 0x00002aaaaab41194 in plugin_call_func (list=0x7ce1c0, operation=451,
pb=0x7fffffffe3f0, call_one=0) at ldap/servers/slapd/plugin.c:1424
#10 0x00002aaaaab41075 in plugin_call_list (list=0x7a5660, operation=451,
pb=0x7fffffffe3f0) at ldap/servers/slapd/plugin.c:1386
#11 0x00002aaaaab3f586 in plugin_call_plugins (pb=0x7fffffffe3f0,
whichfunction=451) at ldap/servers/slapd/plugin.c:379
#12 0x00002aaaafab9b73 in ldbm_back_modify (pb=0x7fffffffe3f0) at
ldap/servers/slapd/back-ldbm/ldbm_modify.c:300
#13 0x00002aaaaab312b4 in op_shared_modify (pb=0x7fffffffe3f0, pw_change=0,
old_pw=0x0) at ldap/servers/slapd/modify.c:834
#14 0x00002aaaaab3090f in modify_internal_pb (pb=0x7fffffffe3f0) at
ldap/servers/slapd/modify.c:554
#15 0x00002aaaaab305f9 in slapi_modify_internal_pb (pb=0x7fffffffe3f0) at
ldap/servers/slapd/modify.c:443
#16 0x00002aaaaab4b917 in pw_mod_allowchange_aci (pw_prohibit_change=0) at
ldap/servers/slapd/pw.c:1297
#17 0x0000000000427195 in pw_init () at ldap/servers/slapd/pw_mgmt.c:301
#18 0x000000000041e514 in main (argc=7, argv=0x7fffffffe8d8) at
ldap/servers/slapd/main.c:1218
(gdb) bt full
#0 0x000000389d430265 in raise () from /lib64/libc.so.6
No symbol table info available.
#1 0x000000389d431d10 in abort () from /lib64/libc.so.6
No symbol table info available.
#2 0x00002aaaab21d61c in PR_Assert () from /usr/lib64/libnspr4.so
No symbol table info available.
#3 0x00002aaaaab33655 in slapi_mods_add_one_element (smods=0x7fffffff9ee0)
at ldap/servers/slapd/modutil.c:178
need = 5
#4 0x00002aaaaab336de in slapi_mods_insert_at (smods=0x7fffffff9ee0,
mod=0xacc100, pos=3) at ldap/servers/slapd/modutil.c:196
i = -24896
a = {a_type = 0x0, a_present_values = {va = 0x0}, a_flags = 0,
a_plugin = 0x0, a_deleted_values = {va = 0x0}, a_listtofree = 0x0, a_next =
0x0, a_deletioncsn = 0x0, a_mr_eq_plugin = 0x0,
a_mr_ord_plugin = 0x0, a_mr_sub_plugin = 0x0}
#5 0x00002aaaaab33974 in slapi_mods_add_ldapmod (smods=0x7fffffff9ee0,
mod=0xacc100) at ldap/servers/slapd/modutil.c:270
No locals.
#6 0x00002aaaaab33aa2 in slapi_mods_add_modbvps (smods=0x7fffffff9ee0,
modtype=130, type=0x2aaab1af998c "entryusn", bvps=0x7fffffff9ed0) at
ldap/servers/slapd/modutil.c:309
mod = 0xacc100
#7 0x00002aaab1af84f4 in _usn_mod_next_usn (mods=0x7fffffff9f30,
be=0x909900) at ldap/servers/plugins/usn/usn.c:378
smods = {mods = 0xadbd90, num_elements = 4, num_mods = 3, iterator =
0, free_mods = 0}
bvals = {0x7fffffff9ec0, 0x0}
usn_berval = {bv_len = 1, bv_val = 0x7fffffff9e80 "0"}
counter_buf =
"0\000\377\377\377\177\000\000f0\264\252\252*\000\000\000\237\377\377\377\177\000\000\300\001\000\000\001\000\000\000
\266\254\000\000\000\000\000\360\343\377\377\377\177\000\000\000\237\377\377\303\001\000\000\300\341|\000\000\000\000"
#8 0x00002aaab1af8773 in usn_bepreop_modify (pb=0x7fffffffe3f0) at
ldap/servers/plugins/usn/usn.c:478
mods = 0xadbd90
be = 0x909900
rc = 0
#9 0x00002aaaaab41194 in plugin_call_func (list=0x7ce1c0, operation=451,
pb=0x7fffffffe3f0, call_one=0) at ldap/servers/slapd/plugin.c:1424
n = 0x7cbfb0 "USN bepreoperation plugin"
func = 0x2aaab1af86f0 <usn_bepreop_modify>
rc = 0
return_value = 0
count = 1
#10 0x00002aaaaab41075 in plugin_call_list (list=0x7a5660, operation=451,
pb=0x7fffffffe3f0) at ldap/servers/slapd/plugin.c:1386
No locals.
#11 0x00002aaaaab3f586 in plugin_call_plugins (pb=0x7fffffffe3f0,
whichfunction=451) at ldap/servers/slapd/plugin.c:379
p = 0x792340
plugin_list_number = 3
rc = 0
do_op = 1
#12 0x00002aaaafab9b73 in ldbm_back_modify (pb=0x7fffffffe3f0) at
ldap/servers/slapd/back-ldbm/ldbm_modify.c:300
be = 0x909900
inst = 0x9069c0
li = 0x793140
e = 0x7678d0
ec = 0xb11470
postentry = 0x0
mods = 0xadbd90
smods = {mods = 0x0, num_elements = 0, num_mods = 0, iterator = 0,
free_mods = 0}
txn = {back_txn_txn = 0x0}
parent_txn = 0x0
retval = -1
msg = 0xd700acf4c0 <Address 0xd700acf4c0 out of bounds>
---Type <return> to continue, or q <return> to quit---
errbuf = 0x0
retry_count = 0
disk_full = 0
ldap_result_code = 0
ldap_result_message = 0x0
rc = 0
operation = 0xad7a00
dblock_acquired = 1
addr = 0xad7ac8
change_entry = 0
ec_in_cache = 0
is_fixup_operation = 0
is_ruv = 0
opcsn = 0x0
i = 0
#13 0x00002aaaaab312b4 in op_shared_modify (pb=0x7fffffffe3f0, pw_change=0,
old_pw=0x0) at ldap/servers/slapd/modify.c:834
rc = -1
be = 0x909900
pse = 0x2aaaaaafcc7d
referral = 0x0
ecopy = 0x0
e = 0x0
ebuf =
"\300\302\377\377\377\177\000\000L:\257\252\252*\000\000\320zz\000\000\000\000\000\000\303\377\377\377\177\000\000\340\345\377\377\377\177\000\000*+\264\252\252*\000\000\000\000\000\000\000\000\000\000\300FB",
'\000' <repeats 13 times>"\220,
\263v\000\000\000\000\000\016\000\000\000\000\000\000\000\022\252t", '\000'
<repeats 13 times>,
"$\220\000\235\001\000\000\000p\257ĐŻ\252*\000\000\220*y", '\000' <repeats 13
times>"\377, \377\377\377", '\000' <repeats 12 times>, "(8\357\235\070",
'\000' <repeats 11 times>"\360,
b\220\000\000\000\000\000\020\304\377\377\377\177\000\000\340\310\377\377\377\177\000\000\000`\020\022r*\000\000U\315\000\235\070\000\000\000\005",
'\000' <repeats 31 times>,
"p\257ĐŻ\252*\000\000\300\310\377\377\377\177\000\000\260\006\221\000\000\000\000\000\342(\001\235\070\000\000\000\330\226ŘŻ\252*\000\000\260\006\221",
'\000' <repeats 13 times>,
"\020\304\377\377\377\177\000\000\360b\220\000\000\000\000\000\300"...
dn = 0x90e980 "o=netscaperoot"
sdn = {flag = 4 '\004', dn = 0x90e980 "o=netscaperoot", ndn =
0x766af0 "o=netscaperoot", ndn_len = 14}
mods = 0x86d920
pw_mod = 0x7fffffffe310
tmpmods = 0x86d920
smods = {mods = 0x0, num_elements = 0, num_mods = 0, iterator = 0,
free_mods = 0}
unhashed_pw_smod = {mods = 0x0, num_elements = 0, num_mods = 0,
iterator = 0, free_mods = 1}
repl_op = 0
internal_op = 32
lastmod = 1
skip_modified_attrs = 0
unhashed_pw_attr = 0x0
operation = 0xad7a00
errorbuf =
"\000\372N\261\252*\000\000Ȣ\377\377\016\000\000\000\000\000\000\000\001\000\000\000\360\r}\000\000\000\000\000\234dž\000\000\000\000\000\026\264I\260\377\377\377\377`\242\377\377\377\177\000\000\325\067\267\252\252*\000\000Ȣ\377\377\377\177\000\000Ȣ\377\377\000\000\000\000p\242\377\377\001\000\000\000\b\275\255\000\000\000\000\000\340\242\377\377\377\177\000\000p\274\255\000\000\000\000\000\000\000\000\000\377\177",
'\000' <repeats 18 times>,
"k'G\235\070\000\000\000\000\000\000\000e\000\000\000n\000\000\000\377\377\377\377\000\243\377\377\377\177\000\000e\324N\261\252*\000\000\060\251\254\000\000\000\000\000\b\275\255\000\000\000\000\000@\243\377\377\377\177\000\000p\274\255\000\000\000\000\000\320\350\377\377\377\177\000\000\b\275\255\000\000\000\000\000`\243\377\377\377\177\000\000p\274\255\000\000\000\000\000\320\350\377\377\377\177",
'\000' <repeats 18 times>,
"k'G\235\070\000\000\000P\215y\000\b\002\000\000\b\275\255\000\000\000\000\000\000\000\000\000\001\000\000\000L:\257\252\252*\000\000\060\340t"...
err = 0
lc_mod = 0x0
p = 0x0
numattr = 11334848
i = 0
#14 0x00002aaaaab3090f in modify_internal_pb (pb=0x7fffffffe3f0) at
ldap/servers/slapd/modify.c:554
---Type <return> to continue, or q <return> to quit---
controls = 0x0
pwpolicy_ctrl = 0
op = 0xad7a00
opresult = 0
normalized_mods = 0x86d920
mods = 0x7fffffffe670
mod = 0x86d928
smods = {mods = 0x100acf4c0, num_elements = -7184, num_mods = 32767,
iterator = -7184, free_mods = 32767}
pw_change = 0
old_pw = 0x0
#15 0x00002aaaaab305f9 in slapi_modify_internal_pb (pb=0x7fffffffe3f0) at
ldap/servers/slapd/modify.c:443
No locals.
#16 0x00002aaaaab4b917 in pw_mod_allowchange_aci (pw_prohibit_change=0) at
ldap/servers/slapd/pw.c:1297
pb = {pb_backend = 0x909900, pb_conn = 0x0, pb_op = 0xad7a00,
pb_plugin = 0x7ce1c0, pb_opreturn = 0, pb_object = 0x0, pb_destroy_fn = 0,
pb_requestor_isroot = 1, pb_config_fname = 0x0,
pb_config_lineno = 0, pb_config_argc = 0, pb_config_argv = 0x0,
pb_target_entry = 0x0, pb_existing_dn_entry = 0xadc210,
pb_existing_uniqueid_entry = 0x0, pb_parent_entry = 0x0,
pb_newparent_entry = 0x0, pb_pre_op_entry = 0xadbed0,
pb_post_op_entry = 0x0, pb_seq_type = 0, pb_seq_attrname = 0x0, pb_seq_val =
0x0, pb_ldif_file = 0x0, pb_removedupvals = 0,
pb_db2index_attrs = 0x0, pb_ldif2db_noattrindexes = 0,
pb_ldif_printkey = 0, pb_instance_name = 0x0, pb_task = 0x0, pb_task_flags =
0, pb_mr_filter_match_fn = 0, pb_mr_filter_index_fn = 0,
pb_mr_filter_reset_fn = 0, pb_mr_index_fn = 0, pb_mr_oid = 0x0,
pb_mr_type = 0x0, pb_mr_value = 0x0, pb_mr_values = 0x0, pb_mr_keys = 0x0,
pb_mr_filter_reusable = 0,
pb_mr_query_operator = 0, pb_mr_usage = 0,
pb_pwd_storage_scheme_user_passwd = 0x0, pb_pwd_storage_scheme_db_passwd =
0x0, pb_managedsait = 0, pb_internal_op_result = 0,
pb_plugin_internal_search_op_entries = 0x0,
pb_plugin_internal_search_op_referrals = 0x0, pb_plugin_identity = 0xacf4c0,
pb_parent_txn = 0x0, pb_txn = 0x0, pb_dbsize = 0,
pb_ldif_files = 0x0, pb_ldif_include = 0x0, pb_ldif_exclude = 0x0,
pb_ldif_dump_replica = 0, pb_ldif_dump_uniqueid = 0,
pb_ldif_generate_uniqueid = 0, pb_ldif_namespaceid = 0x0,
pb_ldif_encrypt = 0, pb_operation_notes = 0, pb_slapd_argc = 0,
pb_slapd_argv = 0x0, pb_slapd_configdir = 0x0, pb_ctrls_arg = 0x0,
pb_dse_dont_add_write = 0, pb_dse_add_merge = 0,
pb_dse_dont_check_dups = 0, pb_dse_is_primary_file = 0,
pb_schema_flags = 0, pb_result_code = 0, pb_result_text = 0x0,
pb_result_matched = 0x0, pb_nentries = 0, urls = 0x0,
pb_import_entry = 0x0, pb_import_state = 0, pb_destroy_content =
0, pb_dse_reapply_mods = 0, pb_urp_naming_collision_dn = 0x0,
pb_urp_tombstone_uniqueid = 0x0, pb_server_running = 0,
pb_backend_count = 1, pb_pwpolicy_ctrl = 0, pb_vattr_context =
0x0, pb_substrlens = 0x0, pb_plugin_enabled = 0, pb_search_ctrls = 0x0,
pb_mr_index_sv_fn = 0}
rc = 32
base = 0x90feb0
values_mod = {0x2aaaaab8f898 "(targetattr = \"userPassword\") (
version 3.0; acl \"disallow_pw_change_aci\"; deny (write ) userdn =
\"ldap:///self\";)", 0x0}
mod = {mod_op = 1, mod_type = 0x2aaaaab8f88d "aci", mod_vals =
{modv_strvals = 0x7fffffffe6a0, modv_bvals = 0x7fffffffe6a0}}
mods = {0x7fffffffe680, 0x0}
be = 0x909900
cookie = 0xacf830 "\004"
#17 0x0000000000427195 in pw_init () at ldap/servers/slapd/pw_mgmt.c:301
slapdFrontendConfig = 0x2aaaaadbcc00
#18 0x000000000041e514 in main (argc=7, argv=0x7fffffffe8d8) at
ldap/servers/slapd/main.c:1218
return_value = 0
slapdFrontendConfig = 0x2aaaaadbcc00
ports_info = {n_port = 389, s_port = 636, n_listenaddr = 0x753590,
s_listenaddr = 0x74f9a0, n_socket = 0x751610, i_listenaddr = 0x0, i_port =
0, i_socket = 0x0, s_socket = 0x0}
https://bugzilla.redhat.com/show_bug.cgi?id=194531https://bugzilla.redhat.com/attachment.cgi?id=437730&action=diffhttps://bugzilla.redhat.com/attachment.cgi?id=437730&action=edit
Thanks to Nathan for his comments to the previous proposal. Based upon the
discussion with him, changed the spec as follows:
1) leave the db2bak/bak2db's behaviour intact (verbose by default)
2) introduced a suppress option "-q" not to send the verbose messages to the
standard error, but just to the errors log.
Description: Introduced "-q" option to suppress the backing up/
restoring message for each db file.
Usage: db2bak [archivedir] [-q] [-h]
Usage: bak2db archivedir [-n backendname] [-q] | [-h]
If "-q" is specified, the verbose messages are not prited to
the standard error, but just to the errors log.
In addition, new log level SLAPI_LOG_BACKLDBM/LDAP_DEBUG_BACKLDBM
has been introduced.
https://bugzilla.redhat.com/show_bug.cgi?id=621928https://bugzilla.redhat.com/attachment.cgi?id=437670&action=diffhttps://bugzilla.redhat.com/attachment.cgi?id=437670&action=edit
Description: RUV (nsuniqueid=ffffffff-ffffffff-ffffffff-ffffffff,<suffix>)
needs to be allowed to add to the DB before<suffix> is added. To allow
it, entryrdn prepares the rdn exception list (rdn_exceptions). If the
to-be-added entry (in this case RUV; and currently only RUV is in the
list) is in the list,<suffix> is added to the entryrdn index with the
temporary entry ID 0 (note: not to the primary db file id2entry.db#).
When the suffix is indeed added to the DB, the temporary ID 0 is replaced
with the given real ID.
Thanks,
--noriko
https://bugzilla.redhat.com/show_bug.cgi?id=194531https://bugzilla.redhat.com/attachment.cgi?id=436980&action=diffhttps://bugzilla.redhat.com/attachment.cgi?id=436980&action=edit
Description:
Added -v option to db2bak and bak2db and moved the Backing up/
Restoring logs to the verbose mode output. To implement the
backend verbose mode, log level SLAPI_LOG_BACKLDBM has been
introduced.
Usage: db2bak [archivedir] [-v]
Usage: bak2db archivedir [-n backendname] [-v]
Files:
ldap/admin/src/scripts/template-bak2db.in
ldap/admin/src/scripts/template-db2bak.in
ldap/include/ldaplog.h
ldap/servers/slapd/back-ldbm/archive.c
ldap/servers/slapd/back-ldbm/dblayer.c
ldap/servers/slapd/log.c
ldap/servers/slapd/main.c
ldap/servers/slapd/slapi-plugin.h
Thanks,
--noriko
Hi all,
I don't know if this is the right place to ask but i want to learn if
support will be available for Solaris 10 SPARC in the upcoming releases of 389
Directory Server?
FAQ<http://directory.fedoraproject.org/wiki/FAQ#What_Operating_systems_are_supp…>states
that Solaris 8 SPARC & Solaris 9 SPARC is already supported. Any
info will be appreciated.
Best regards.
Ogun Heper