directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <>
Subject Re: Some basic question
Date Thu, 12 May 2011 09:33:11 GMT
On 5/12/11 9:45 AM, Rajesh Akkineni wrote:
> Hi,
> I was going trough the source of ApacheDS and trying to understand its 
> functionality.
> I have the following question..along with some assumptions which I 
> want to confirm.
> 1) Each Entry is saved as key-value pair where key is Long and value 
> is serialized form of Entry. Is it correct?
> 2) All attribute values are stored along with serialized entry as 
> StringValue, BinayValue. Right?
> 3) Why these two Values save wrappedValues where they can only save 
> normalziedValue?
because we have to return the value has the user provided it.

For instance, if you created an entry with a givename = Rasjesh, you 
want to get it as 'Rajesh', not 'rajesh'
> 4) When do Normalizers get called? LDAP v3 RFC is not talking anything 
> about normalization.
Normalizers are used because we need to compare values, and some AT are 
case insensitive, or spaces aren't meaningful, so we have to 'normalize' 
those values to ease the comparison task.
> 5) Numeric, Boolean values are stored as strings in store? If Yes, 
> Why? Will it not be optimal to store them in more compact form?
The Boolean value is supposed o be TRUE or FALSE, nothing else (upper 
case). Numeric values are not defined as bounded values.

In general, LDAP is about manipulating Strings, so such an optimization 
would be totally useless.
> 6) Which syntaxes are stored as String and which are stored as Byte[]?
Human-readable (HR) values are stored as String, others are stored as 
byte[]. HR ATs are defined in the RFC or by adding a ;binary option in 
the attribute name. We default to String.

Hope it helps.

Emmanuel L├ęcharny

View raw message