directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <>
Subject [Schema refactoring] 3
Date Mon, 24 Aug 2009 16:08:34 GMT
After more thoughts, some new ideas :

- There is no need to have two classes, one for the SchemaObject, one 
for the SchemaObjectDescription. We can simply store the description in 
the SchemaObject super class, saving not only one class, but also a 
oidToDesctiption() map.

- We should keep the user provided elements. Ie, if the user send a NAME 
in uper case, like :
( NAME 'MYATTRIBUTE" ...), we must render it as is.

- The best possible storage on disk is as LDIF.

- The schema modification on the server must be done as a whole, that 
means we must 'encapsulate' a sets of modifications with two extended 
requests, one to start the modification, and another one to commit or 
rollback it.

- We must also allow only one single modification of the schema to 
occur. That means we must have a global queue of pending modifications. 
Once the first modification is done, we can apply the next one. Of 
course, this queue will be emptied after a timeout or if a specific 
Extented request is sent

- We may want to move the fqcn and bytecode fields of 
LoadableSchemaObjects to extensions (x-fqcn and x-bytecode).

That's pretty much it...

Thanks to Alex and PAM for their ideas.

cordialement, regards,
Emmanuel L├ęcharny

View raw message