Details

    • Type: Improvement Improvement
    • Status: Open
    • Priority: Minor Minor
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 2.0.0-RC1
    • Component/s: core
    • Labels:
      None

      Description

      Currently alias dereferencing (I forgot the RFC #) is coupled with ContextPartition, but it could be extracted into an interceptor which will give some advantages like:

      • ContextPartition implementors don't need to implement alias dereferencing.
      • Alias dereferencing can occur across different context partitions.

        Activity

        Trustin Lee created issue -
        Alex Karasulu made changes -
        Field Original Value New Value
        Component/s interceptors [ 11432 ]
        Project Directory Server [ 10516 ] Directory ApacheDS [ 12310260 ]
        Key DIREVE-267 DIRSERVER-477
        Alex Karasulu made changes -
        Component/s core [ 12310713 ]
        Hide
        Emmanuel Lecharny added a comment -

        Status ? Has it been fixed ?

        Show
        Emmanuel Lecharny added a comment - Status ? Has it been fixed ?
        Emmanuel Lecharny made changes -
        Fix Version/s 2.0.0 [ 12312396 ]
        Hide
        Stefan Seelmann added a comment -

        I think it should not be implemented using an interceptor. Some parts of the server use DefaultPartionNexus.search() directly rather then going through the interceptor chain (SubentryInterceptor, ReferrralManagerImpl, GroupCache, TupleCache, TriggerSpecCache). Those parts won't be able to perform alias dereferncing if alias dereferencing is handled within an interceptor.

        Instead I propose to add this feature to the PartitionNexus. I started to create a new cursor implementation that handles alias dereferencing. In case alias dereferncing is reqeuested it adds an or'ed filter to the original user's filter: (|<user filter>(objectClass=alias)). Alias entries returned by the partition are dereferenced by the cursor and a sub-search is performed.

        Using this technique the partition implementation don't need to implement alias dereferencing. The alias indices (alias, oneAlias, subAlias) are not neccessary any more and can be removed from JDBM partition. Additionally alias dereferencing across partitions is possible.

        Thoughts?

        Show
        Stefan Seelmann added a comment - I think it should not be implemented using an interceptor. Some parts of the server use DefaultPartionNexus.search() directly rather then going through the interceptor chain (SubentryInterceptor, ReferrralManagerImpl, GroupCache, TupleCache, TriggerSpecCache). Those parts won't be able to perform alias dereferncing if alias dereferencing is handled within an interceptor. Instead I propose to add this feature to the PartitionNexus. I started to create a new cursor implementation that handles alias dereferencing. In case alias dereferncing is reqeuested it adds an or'ed filter to the original user's filter: (|<user filter>(objectClass=alias)). Alias entries returned by the partition are dereferenced by the cursor and a sub-search is performed. Using this technique the partition implementation don't need to implement alias dereferencing. The alias indices (alias, oneAlias, subAlias) are not neccessary any more and can be removed from JDBM partition. Additionally alias dereferencing across partitions is possible. Thoughts?
        Hide
        Emmanuel Lecharny added a comment -

        Moved back to 2.0.0-RC1

        Show
        Emmanuel Lecharny added a comment - Moved back to 2.0.0-RC1
        Emmanuel Lecharny made changes -
        Fix Version/s 2.0.0-RC1 [ 12313387 ]
        Fix Version/s 2.0.0 [ 12312396 ]
        Emmanuel Lecharny made changes -
        Fix Version/s 2.0-M1 [ 12316055 ]
        Fix Version/s 2.0.0-RC1 [ 12313387 ]
        Hide
        Pierre-Arnaud Marcelot added a comment -

        Version 2.0.0-M1 has been released.
        Moving all related non-resolved issues to the next version.

        Show
        Pierre-Arnaud Marcelot added a comment - Version 2.0.0-M1 has been released. Moving all related non-resolved issues to the next version.
        Pierre-Arnaud Marcelot made changes -
        Fix Version/s 2.0.0-M2 [ 12316056 ]
        Fix Version/s 2.0.0-M1 [ 12316055 ]
        Pierre-Arnaud Marcelot made changes -
        Fix Version/s 2.0.0-M3 [ 12316467 ]
        Fix Version/s 2.0.0-M2 [ 12316056 ]
        Hide
        Pierre-Arnaud Marcelot added a comment -

        Version 2.0.0-M3 has been released a couple months ago.

        Assigned the remaining opened JIRA to the next iteration (2.0.0-M4).

        Show
        Pierre-Arnaud Marcelot added a comment - Version 2.0.0-M3 has been released a couple months ago. Assigned the remaining opened JIRA to the next iteration (2.0.0-M4).
        Pierre-Arnaud Marcelot made changes -
        Fix Version/s 2.0.0-RC1 [ 12313387 ]
        Fix Version/s 2.0.0-M3 [ 12316467 ]

        Error rendering 'com.atlassian.jirafisheyeplugin:fisheye-issuepanel'. Please contact your JIRA administrators.

          People

          • Assignee:
            Alex Karasulu
            Reporter:
            Trustin Lee
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:

              Development