On Thu, Jan 11, 2018 at 10:04:22AM +0100, Michael Ströder wrote:
Ervin Hegedüs wrote:
> On Wed, Jan 10, 2018 at 12:17:47PM -0800, Quanah Gibson-Mount wrote:
>> --On Wednesday, January 10, 2018 9:11 PM +0100 Ervin Hegedüs
>> <airween(a)gmail.com> wrote:
>>> is there any relevant difference between the replace and
>>> delete/add methods, which triggered this state in the DB?
>> Jon already answered that. When you use replace, it replaces *all* values
>> with what you supply in the operation.
> but he wrote the answer for MULTI-VALUE's attribute, but I'm
> useing SINGLE-VALUE - or em I missing?
While the attribute types you're defining might be SINGE-VALUE the
attribute 'olcAttributeTypes' you're adding the attribute type
descriptions to is indeed multi-valued. Otherwise you could not add
multiple values (here attribute type descriptions) to it.
meantime turned out to me, that in first answer Jon talked about
the more-that-one attributes, when he wrote "You cannot use a
replace operation to replace individual values of a multi-valued
attribute". I mixed out these concepts.
>> Don't use replace.
> right, after this issue I'll never use it :).
> But I still don't understand, that when I replace the *all*
> values to the supplied type(s), then why disappears the "other"
> attributes, which weren't listed in transaction?
Because that's how LDAP modify operations with MOD_REPLACE work.
See description of "operation" herein:
thanks, perhaps the relevant part is this:
replace: replace all existing values [...] A replace with no value
will delete the entire attribute if it exists.
Also it's a good idea to take a look at Howard's draft about
entries and values because 'olcAttributeTypes' is declared with X-ORDERED:
I'll check it out -
Anyway, I'm doing fine the modifications of schema :).
thanks for all,