Bug 553027 - Support for nsUniqueId and alias for additional retro changelog attributes
Summary: Support for nsUniqueId and alias for additional retro changelog attributes
Alias: None
Product: 389
Classification: Retired
Component: Server - Plugins
Version: 1.2.1
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Rich Megginson
QA Contact: Viktor Ashirov
Depends On:
Blocks: 389_1.2.6 639035
TreeView+ depends on / blocked
Reported: 2010-01-06 21:10 UTC by Endi Sukma Dewata
Modified: 2015-12-07 17:00 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2015-12-07 17:00:18 UTC

Attachments (Terms of Use)
Patch (7.83 KB, patch)
2010-01-13 06:34 UTC, Endi Sukma Dewata
rmeggins: review+
Details | Diff

Description Endi Sukma Dewata 2010-01-06 21:10:57 UTC
Currently the retro changelog supports a set of additional attributes:
* built-in attribute: isReplicated
* any attributes stored in the changed entry: e.g. cn, uid, objectClass

Adding nsUniqueId into the change log record is currently not possible because it requires calling the slapi_entry_get_uniqueid(). Also the additional attribute may conflict with the standard attributes in the change log record.

To fix this problem the plugin should support the nsUniqueId as a built-in attribute and an alias for renaming each additional attribute. The alias should be specified after the attribute name in the nsslapd-attribute, separated by a colon. For example:

nsslapd-attribute: nsUniqueId:changedUniqueId
nsslapd-attribute: objectClass:changedObjectClass

The change log record should look like the following:

dn: changenumber=...,cn=changelog
objectClass: top
objectClass: changelogentry
objectClass: extensibleObject
changeNumber: ...
changeTime: ...
changeType: ...
targetDn: ...
changedUniqueId: <nsUniqueId of the changed entry>
changedObjectClass: <objectClass of the changed entry>

Comment 1 Endi Sukma Dewata 2010-01-13 06:34:09 UTC
Created attachment 383418 [details]

Comment 2 Rich Megginson 2010-01-13 16:21:15 UTC
To ssh://git.fedorahosted.org/git/389/ds.git
   cd1ab96..9f88491  master -> master

commit 9f88491132cb2d1c5f11fd5475e1a6826e1dc7ee
Author: Endi S. Dewata <endisd@gmail.com>
Date:   Tue Jan 12 14:43:08 2010 -0600

Pushed to master by rmeggins

Comment 4 Amita Sharma 2011-06-22 08:33:00 UTC
ldapsearch -x -h localhost -p 1389 -D "cn=Directory Manager" -w Secret123 -b "cn=changelog" -s sub "(objectclass=*)" nsUniqueId
# extended LDIF
# LDAPv3
# base <cn=changelog> with scope subtree
# filter: (objectclass=*)
# requesting: nsUniqueId 

# changelog
dn: cn=changelog
nsUniqueId: a511a250-9bef11e0-8bc3f046-3ecc72f1

# 26, changelog
dn: changenumber=26,cn=changelog
nsUniqueId: d0f05e04-9ca711e0-8bc3f046-3ecc72f1

# 27, changelog
dn: changenumber=27,cn=changelog
nsUniqueId: cafb7d56-9ca911e0-8bc3f046-3ecc72f1

Hence Verified.

Note You need to log in before you can comment on or make changes to this bug.