You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 24 Next »

Summary

This is a continuation (phase II) of the bigbang refactoring going on in the bigbang branch here:

https://svn.apache.org/repos/asf/directory/apacheds/branches/bigbang-with-dependencies

For more information on the big bang effort please look here:

http://www.nabble.com/-ApacheDS---BigBang--Status-Report-tf4585474.html#a13089517

Progress

AOK: Alex, CCU: Chris, CKO: Christine, DDJ: David, EER: Ersin, ELE: Emmanuel, ERO: Enrique, MAL: Martin, PAM: Pierre-Arnaud, SSE: Stefan (S), SZR: Stefan (Z)

Task

duration

when

who

status

Core Integration Testing

7 days

1st

AOK

(tick)

Swap Big Bang into Trunk

0 days

10th

AOK

(tick)

The Rest

20 days

10th

AOK

(!)0%

Item 4

 

 

 

(lightbulb)

Our December Calendar

Error formatting macro: calendar: com.thoughtworks.xstream.security.ForbiddenClassException: com.atlassian.confluence.extra.calendar.model.CalendarGroup

Complete Usable Core Integration Testing Framework

The integration framework specified in the following document for the core will be implemented to a degree which will make it useful. The features may not be complete however the reduction in integration testing of the core should drop dramatically by using this framework.

Core Integration Testing Framework

Replace Attribute and Attributes

We will be replacing the use of Attributes and Attribute interfaces inside the server with server specific schema aware representations for entries and their attribute values. These schema aware objects utilize schema information to conduct simple operations like contains() and equals() checks properly. Hence this cleans up several bug ridden regions of the server where these check may or may not be performed correctly.

More information on this initiative is available ServerValue, ServerAttribute and ServerEntry.

While doing this several other changes will be drawn in because of the dependencies impacted by this change. These are noted in other sections of this document.

Participants

Alex Karasulu
Emmanuel Lécharny

Replace NamingEnumeration

The server uses java.naming.NamingEnumeration objects to stream out results as if it was a cursor. Besides causing problems with exception handling and usage it prevents returning ServerEntry objects. This must be replaced with the proper Cursor construct. These changes will tunnel deep into the jdbm implementation of partitions but much code will be cleaned up and made more efficient.

More information on this initiative is available Cursors.

Participants

Alex Karasulu
Emmanuel Lécharny

Replace ModificationItem

We no longer need to use JNDI analogs which are not schema aware and cause issues with simple operations, so it makes sense to get rid of using ModificationItems. These objects should be using ServerValues and ServerAttributes to do their bidding.

Participants

Alex Karasulu
Emmanuel Lécharny

Clean Up LDIF Entry

Makes sense to cleanup the LDIF Entry so that it uses ServerValues when used in the server and ClientValues when used outside of the server.

Participants

Alex Karasulu
Emmanuel Lécharny

Replace SearchControl

Again this analog should go to complete the picture. For the server side there is no reason to be using strings for the values of attributes instead of AttributeTypes themselves.

Participants

Alex Karasulu
Emmanuel Lécharny

Revamp Invocation Stack

Before we can completely remove JNDI from the picture the InvocationStack must be made non-static and must use OpContexts instead of JNDI Contexts as elements in the stack.

Participants

Alex Karasulu
Emmanuel Lécharny

Complete JNDI Wrapper Decoupling

Once all these changes are made then the JNDI wrapper can be better decoupled from the JNDI wrapper. Which is what it now becomes once we remove native JNDI support. These server constructs are simply transformed to and from JNDI constructs to rid the server of ambiguities.

Sticky Points

  • Stored Procedure subsystem optionally passes JNDI Contexts into procedures.
  • PartitionNexusProxy must go away - need a means to pump operations directly into InterceptorChain

Participants

Alex Karasulu
Emmanuel Lécharny

  • No labels