Hi guys,
after the paged search control, I'm trying to clean some issue we have
with Aliases. This raise some questions I have about the way we handle
aliases.
First, this is not a common features ( It's not mandatory to handle
aliases in a LDAP server, and currently, AFAIK, Opends, SunDS and AD
don't support aliases, while OpenLDAP does ).
We are supporting Aliases, to a certain extend. But it may be :
- not complete
- and inefficient
We are not going to address #2, as first I haven't made any measure to
see if it's efficient or not, and #2, it's not time for such
improvement. So my questions will be mostly about #1.
First, we have an open issue since 1.0 version : DIRSERVER-803
(https://issues.apache.org/jira/browse/DIRSERVER-803). This is a special
case : we create an alias which is linked to an ancestor. Questions :
1) Should we allow such aliases ? Currently, it's rejected and seen as a
loop.
2) If we allow such aliases, how should we detect that we are not
looping when doing a subtree search ?
3) What about cross referencing alias (ie alias A refers to alias B and
vice versa) ?
We have options, as we maintain a cache internally with all the entries
which are not aliases ( a bit like what we do with referrals), but as we
may have order of magnitudes more non-aliases than aliases, this sounds
a bit weird to me. Shouldn't we create a cache of entries which are
referrals instead of the opposite ? This is what we do for the
referrals, and we initiate this cache when starting the server, reading
all the entries with the referral AT.
Also another question : we are handling aliases in the
ExceptionInterceptor. Wouldn't it be better to do so in an
AliasInterceptor ?
Wdyt ?
PS: we may differ the Alias modifications to another version, as it may
take more than a couple of days to fix it. Also we need more tests for
aliases : currently, I'm not sure we have some !
Thanks !
--
--
cordialement, regards,
Emmanuel Lécharny
www.iktek.com
directory.apache.org