Avoid multiple creation of LdapDN
---------------------------------
Key: DIRSERVER-652
URL: http://issues.apache.org/jira/browse/DIRSERVER-652
Project: Directory ApacheDS
Type: Improvement
Versions: 1.0-RC3
Reporter: Emmanuel Lecharny
Fix For: 1.0-RC4
After having profiled the server, I found that the LdapDN<init>(Name) has been
called 3000 times, because the LdapPrincipal contains a Name instead of a
LdapDN element.
We should check that the passed Name is not an instance of LdapDN before
calling new LdapDN( Name) in
org.apache.directory.server.core.authz.DefaultAuthorizationService.protectLookUp()
method
:
...
LdapDN principalDn = new LdapDN( ( ( ServerContext ) ctx
).getPrincipal().getJndiName() );
...
could be :
Name name = ( ( ServerContext ) ctx ).getPrincipal().getJndiName() ;
LdapDN principalDn= ( name instanceof LdapDN ? name.clone() : new LdapDN( name
) );
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira