Well, you are a patient guy :)

I really thought you were close to format your hard disk, and switch to
MacOsX ;)

Ok, the backend is not a simple matter (compiling the server was a piece of
cake compared to switching the backend). Anyway.

We have currently only one supported backend : JDBM. JDBM is a B-TREE
implementation written in java. It was small, and ASL 2.0 compliant, and is
pretty fast too.

Basically,we store data in ADS in what we call "partition". A partition is
just an configuration which describes the way data are to ba handled (which
indices should be create, the cache size, and eventually, the backend to be
used). A parttion contains one big table (the master table, containing all
the entries), and many tables containing the indices. We have system indices
(like DNs index, Hierarchy index, etc), and user defined indices (index on
CN, for instance, or another one on Country, whatever the user wants).

Ok this is the 50 000 feet overview.

Now, if you look ate the server.xml file, you will see that every partition
is handled by a class. For instance, the example partition ("dc=example,
dc=com"), is handled by a MutableBTreePartitionConfiguration :
<bean id="examplePartitionConfiguration" class="
org.apache.directory.server.core.partition.impl.btree.MutableBTreePartitionConfiguration
">

This is the place where you describe all the parttion configuration. Now,
when the server starts, it reads all those configurations to create the
tables and the indices.

All the accessors to this partition (add, delete, search, etc) are supposed
to implementent the Partition interface. For instance, the JdbmPartition
class extends the BTreePartition which implements the Partition interface.
This is also where it start to be tricky...

Ok, 10pm here, time for me to go back home :)

Just have a look at those classes first, and come back with questions, but
I'm sure that at some point, we will be stuck somwhere ;)

Emmanuel

On 6/5/07, Barber, Dan (Contractor) <[EMAIL PROTECTED]> wrote:

Emmanuel,

I finally got the build working. I can confirm that ApacheDS does not
currently build with Java 1.6. I ended up cleaning up everything again,
uninstalling all Javas, and starting over from the beginning. With 1.5ApacheDS 
source built just fine. Did the same thing with
1.6 and it didn't build.

Ok, so I've got the source building. Now, what can you point me to for
figuring out how to support a different database backend?

Thanks!

Dan

-----Original Message-----
From: Emmanuel Lecharny [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 05, 2007 9:15 AM
To: [email protected]
Subject: Re: FW: Alternate back-ends

Oh, sorry, I thoght I had answered yesturday, but as I upgraded thnderird
in
the meantime, I think it has been lost somwhere on the internet ...

So basically, I guess you have tried with a previous version of ADS, and
you
have some old jars somwhere in your maven reposiory.

What I suggest is that you remove completely your ~/.m2/repository (rm -rf
~/.m2/repository) and do a mvn clean install. It will take longer, but
will
be safe. (of course, if you want to keep your repository because you are
using it for another project, just rename it).

If it does not work, try with Java 1.5.

Thanks !

On 6/5/07, Barber, Dan (Contractor) <[EMAIL PROTECTED]> wrote:
>
> Emmanuel,
>
> Did you have a chance to look at the log file, did you see anything
silly
> that I am missing? Is using 1.6 not currently supported for apacheds 1.5
?
>
> Thanks,
>
> Dan
>
> -----Original Message-----
> From: Barber, Dan (Contractor)
> Sent: Monday, June 04, 2007 12:30 PM
> To: '[email protected]'
> Subject: RE: Alternate back-ends
>
> Emmanuel,
>
> Thanks for all the help so far. I've switched to 2.0.6 of Maven. I
> initially had installed that then switched to 2.0.4, now I've switched
> back.
>
> I'm using the 6.0_01 version of the jdk.
>
> I've attached the log I think you were wanting to see. Let me know if I
> need to paste it in rather than attach it.
>
> Thanks,
>
> Dan
>
> -----Original Message-----
> From: Emmanuel Lecharny [mailto:[EMAIL PROTECTED]
> Sent: Monday, June 04, 2007 11:32 AM
> To: [email protected]
> Subject: Re: Alternate back-ends
>
> Barber, Dan (Contractor) a écrit :
>
> >As far as building the source. We need to target 1.5 due to it's
> increased support for secure logins. I've been using the instructions
from
> this page, http://directory.apache.org/apacheds/1.5/building-trunks.html
.
> It's quite possible that I've just simply missed a step or done
something
> silly since some of these tools are still new to me.
> >
> >
> >I have installed Maven 2.0.4.
> >
> >
> I think you need maven 2.0.5, now (AFAIK, there are some bugs in 2.0.4
> which can cause pbs). 2.0.6 will work too.
>
> Which JVM are you using ?
>
> >I've installed SVN and run the command
> >svn co
>
http://svn.apache.org/repos/asf/directory/apacheds/trunk-with-dependencies/apacheds-trunk
> >Then, inside the directory apacheds-trunk I run mvn install. Here are
the
> errors I'm getting.
> >
> >Failed tests:
> >  testOneEntryImport(
> org.apache.directory.server.tools.commands.importcmd.Import
> >CommandTest)
> >  testTenEntriesImport(
> org.apache.directory.server.tools.commands.importcmd.Impo
> >rtCommandTest)
> >  testTwoEntriesImportOneOnErrorAndOneOk(
> org.apache.directory.server.tools.comma
> >nds.importcmd.ImportCommandTest)
> >  testOneEntryImportWithEntryAddedNotification(
> org.apache.directory.server.tools
> >.commands.importcmd.ImportCommandTest)
> >  testRFC2849Sample1(
> org.apache.directory.server.tools.commands.importcmd.Import
> >CommandTest)
> >  testRFC2849Sample2(
> org.apache.directory.server.tools.commands.importcmd.Import
> >CommandTest)
> >  testRFC2849Sample3(
> org.apache.directory.server.tools.commands.importcmd.Import
> >CommandTest)
> >  testRFC2849Sample3VariousSpacing(
> org.apache.directory.server.tools.commands.im
> >portcmd.ImportCommandTest)
> >  testExportCommand(
> org.apache.directory.server.tools.commands.exportcmd.ExportC
> >ommandTest)
> >  testOneEntryImport(
> org.apache.directory.server.tools.commands.gracefulshutdown
> >cmd.GracefulShutdownCommandTest)
> >
> >My guess is I've just missed something simple. Any help you can offer
> would be greatly appreciated.
> >
> >
> It would be interesting to have the surefire logs (it's generated by
> maven, with the failing class name followed by a .txt, like
>
> testRFC2849Sample2(
>
org.apache.directory.server.tools.commands.importcmd.ImportCommandTest.txt
>
> somwhere on your disk.
>
> Emmanuel
>
>
>


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




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

Reply via email to