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

Re: (ITS#4820) More issues with modify opattrs in syncrepl

Howard Chu wrote:

> I guess we could just set DBFLAG_NOLASTMOD on the db. We really only
> need to make sure a structuralObjectClass and entryUUID gets set for an
> Add operation.

Just ot avoid overloading stuff, I prefer to add a field to the
rs_modify structure that prevents from creating the operational attrs.
There might be cases where occasionally we want opattrs and occasionally
we don't, and having to create a copy of the BackendDB structure just to
toggle a flag seems to be an overkill.

I'm about to commit a patch to this.  The fix allows to ask for most of
the operational attrs in test017 and test018 (only entryCSN can't be
checked only because it gets out of sort, I need to find why).  In
test019, if all modify opattrs are requested there are even more out of
sort stuff, so I'm not going to touch it.  In any case, I've checked
that apart from the print order the values are all in sync.  About print
ordering, I guess a workaround would be to sort each LDIF line when
comparing outputs.  This would cure the tests, but it might still
overload mods checking in syncrepl; redesigning syncrepl so that
out-of-order is no longer an issue could be an option.