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


Pierangelo Masarati wrote:
Pierangelo Masarati wrote:

Not now.  However, I think I spotted (and probably fixed) another related
issue.  The key point is that slapadd -w simply checks, and in case
updates, the first occurrence of contextCSN.  I believe this is not
correct: it should go through all occurrences to find if there's one with
the same SID of maxcsn and, if maxcsn is larger than that, update it.  If
none matches, maxcsn should be added.  For this purpose, I defined a
CSNSIDMatch equality rule, that works for the CSN syntax, and allows to
compare CSN values by SID only.  I added this logic to slapadd -w and now
things seem to work as expected.

Just for the records: <http://www.openldap.org/faq/data/cache/1145.html>

draft-chu-ldap-csn was somewhat off base to begin with; it was an attempt to define a new format without the useless changeCount field that we're currently carrying around. Note that liblutil/csn.c documents the actual format and its original source (draft-ietf-ldup-model-03.txt) and also the change of the server ID field from 2 to 3 hex digits.
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/