What exactly is a partition?

Within ApacheDS, a partition is a physically distinct store for a subset of the entries contained within the server. A partition can be implemented using any storage mechanism or can even be backed in memory. The default storage mechanism for a partition is JDBM.

Implementing your own partition is basically implementing the Partition interface from the org.apache.directory.server.core.partition package.

Hello world. A minimal partition

Let's start with a minimal partition, the hello world. Minimal means here, that it is possible to add it to ApacheDS and see it with an LDAP browser. The partition ...

correctly implements the Partition interface

is pluggable in the server (embedded and declarative in the configuration)

is visible for clients like ldapsearch or Apache Directory Studio

contains one entry, which contains the famous "hello, world" message in an attribute value