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

Re: Has anyone got notes & minutes?



I did have a couple of comments/questions related to asynchronous operations and transactional updates (Section 3/3.1). [remember when this was the ACID working group :)]

Servers and clients "generally may be exchanged between a client and server in any order, provided the client eventually receives a response for every request that requires one. " Sermersheim, LDAP: The Protocol v25 at 4.

This language is somewhat ambiguous, since it does not specify when we do need to impose at least a partial ordering. For example, if two AddRequest messages are sent, the first one creating a parent entry, and the second a child, the second operation will fail if it is processed before the first. Should this be valid behavior? If the client gets a success response to the second operation before the it has responded to the first, and if the connection is dropped before the response for the first operation is received, MAY the client assume that the first operation also succeeded?

Another example: if both operations are successfully prepared but not committed, and a search request is received that matches one of the entries, is a server free to send a SearchResult containing that entry before it has send the AddResponse?
If the connection is dropped after the SearchResult is sent, but before the AddResponses have been send, SHOULD the server rollback the operations? MAY the server rollback the operations?


Simon