Le 4/24/12 2:22 PM, Pierre-Arnaud Marcelot a écrit :
On 24 avr. 2012, at 13:28, Emmanuel Lécharny wrote:
Hi guys,

Aliases handling is one of the biggest challenge in LDAP, as it imposes a lot 
of constraints. First of all, keep in mind that Alias support is not mandatory.

Some of the problem we have when dealing with Alaises are :
- cycle detection : we should not allow the creation of an alias that causes a 
cycle
- duplicated entry removals in searches : we shuld not return an entry that has 
already been returned
- unlinked aliases : when the aliased entry is removed, we should should handle 
it
- subtree searches with aliases : we may have a very high nunber of entries to 
return
- move operation : how do we handle the aliases modification when the aliased 
entries is move ?
- cross-partitions aliases : how do we handle them ?
- replication of aliases

Right now, my concern is about duplicated entries removal and cycle detection, 
during a search processing :

1) Cycle detection :
Should we assume that the cycles are detected during the alias creation ? Or 
should we detect it while processing the search ? (I'm nclined to think that 
cycle are forbidden during their creation)
I agree there should be a check during the creation of the entry (and move 
operations too, I guess).

But, I think we also need to check for cycles during the evaluation of the 
search.
If we use a batch insert mode with the server turned off to insert a large 
number of entries (even if we don't have such a possibility now, we might get 
it in a near future), we might have this kind of inconsistencies in the 
database.
IMO, even if we provide a batch mode (which we have to provide in the near future !), the we also must provide a check tool in order to be sure that we haven't injected crap into the database.

Checking for cycle can be a costly operation...


--
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com

Reply via email to