directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <elecha...@apache.org>
Subject Re: [ApacheDS] do we need a special partition for CiDIT?
Date Sun, 02 Aug 2009 19:16:13 GMT
Kiran Ayyagari wrote:
> hello guys,
>
>       As a second step in getting the CiDIT [1] am currently 
> implementing a new partition which uses
>       LDIF files as backend, however as I go deeper in 
> implementation(atm the partition supports add operation)
>       I asked a couple of questions to myself which I would like to 
> share and seek opinion on
>
>       1. Instead of creating a whole new partition impl for storing 
> CiDIT can we use the existing (and well tested)
>          JDBM partition?
Well, at first sight, I don't think it's a good idea. The initial target 
was to allow an admin to manipulate the conf without having to use a 
tool to change the config. Being able to modify the conf with 
vi/emacs/notepad is always a good thing compared to having a broken conf 
in an opac file. But ...
>
>          The JDBM based partition stores data in binary format but in 
> order to make the configuration editable using
>          a simple text editor I propose the following steps
>
>          a. After initial startup of server the default configuration 
> will be dumped to the file system as a single
>             LDIF file or as a set of directories and LDIF files( 
> mimicking the DIT structure)
What if the JDBM file is broken ?
>
>          b. A watchdog thread will keep listening on this file(s) for 
> changes
>
>              i. any change of type update/delete done to the content 
> of file(s) will be reflected in
>                 the CiDIT accordingly, but
>
>              ii. If the file itself gets deleted we *don't* delete the 
> configuration data in DIT but simply dump
>                  that data again to file system. To delete the 
> configuration data completely the corresponding
>                  partition needs to be physically removed from the 
> disk in which case the system restores the
>                  default configuration during the next startup
>
>          c. similarly this file(s) gets updated if the configuration 
> data DIT gets updated
>
>
>   thanks for your time and I appreciate your comments :)
Ok, I see where you want to go : basically, guarantee that the config 
can be read as we know that if it's JDBM packed, the partition will 
work. I would say that as a first step, to debug the config itself (ie, 
to check that all the parameters are OK), we can do that. But at the 
end, I really think we must go for a text based config.
>
>   P.S:- Though implementing a partition is not difficult it is 
> certainly not trivial, am thinking in terms of
>         maintaining code and the amount of configuration required for 
> each new partition impl to be used in server
>         and also considering the time we have to implement replication 
> support in 2.0
IMO, writing  a new partition bascked by ldif files should not really 
take much more than 2 weeks. But as we really need to have some config 
element for the replication subsystem, and if going with JDBM backed 
config will help, I would say : go for it.

Thanks !


>
>
> [1] 
> http://cwiki.apache.org/confluence/display/DIRxSRVx20/ADS+2.0+configuration 
>
>
> Kiran Ayyagari
>


-- 
--
cordialement, regards,
Emmanuel L├ęcharny
www.iktek.com
directory.apache.org



Mime
View raw message