[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#5534) Samba4 needs internal transactions/consistancy
abartlet@samba.org wrote:
> Full_Name: Andrew Bartlett
> Version: CVS HEAD
> OS: Fedora 9
> URL: http://www.openldap.org/lists/openldap-technical/200803/msg00101.html
> Submission from: (NULL) (59.167.251.137)
>
>
> For Samba4, I need a few things, detailed in the attached URL.
The above message thread had some unanswered questions. We may need to have
each point listed out again.
> This ITS is for internal transactions and validation - the ability to have a
> openldap overlay roll back all the changes so far, because a precondition is not
> met.
I think this one is understood, OK. Just a matter of getting the time to do it.
> I need the memberOf and refint modules to ensure that no dangling links ever
> exist, even over subtree renames and invalid modifies, and that a transaction
> ensures this is always the case.
I think the proper use of memberOf still needs to be addressed. E.g., it's
generally a bad idea to search for (memberOf=foo) when you can simply
enumerate the members inside the "foo" entry. If you give us precise examples
of the searches and modifications that you'll be using, we may be able to
narrow the scope of this work.
> This needs to occur even between databases on the server, but I won't ask that
> it occur outside the known trees.
It's already possible for operations in one database to reference entries in a
different database, so that aspect of validation should be fine. However, as
noted before, "validation" is generally bogus to begin with. In particular,
how do you create entries with circular references? If you disallow references
to nonexistent entries, you can't set the references until after all of the
entries have been created. This means that you cannot backup a database that
has these references and then later reload it in a single pass.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/