Binary Attribute Type causes java.lang.StackOverflowError
---------------------------------------------------------
Key: DIRSERVER-1457
URL: https://issues.apache.org/jira/browse/DIRSERVER-1457
Project: Directory ApacheDS
Issue Type: Bug
Components: core
Affects Versions: 1.5.5
Environment: Ubuntu Linux x86_64
Sun JDK 1.6.0_17-b04
Reporter: Lorin Metzger
After creating a custom binary attribute like
dn: cn=schema
changetype: modify
add: attributeTypes
attributeTypes: ( 1.3.6.1.4.1.65536.0.4.3.2.1
NAME 'templateData'
DESC 'template data'
EQUALITY caseIgnoreMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.5
SINGLE-VALUE
)
And a objectclass which contains that attribute. Trying to insert a byte[]
from Java/JNDI
Attributes attrs = new BasicAttributes();
BasicAttribute ocattr = new BasicAttribute("objectclass");
ocattr.add("top");
ocattr.add("templateObject"));
attrs.put( ocattr );
byte[] template_data = new byte[4096];
attrs.put("templateData", template_data);
context.bind("cn=atemplate,dc=kynen,dc=com", null, attrs);
Causes the ApacheDS server to throw the following StackOverflowError
[20:12:28] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] -
Unexpected exception forcing session to close: sending disconnect notice to
client.
java.lang.StackOverflowError
at
org.apache.directory.server.core.entry.ServerBinaryValue.getNormalizer(ServerBinaryValue.java:574)
at
org.apache.directory.server.core.entry.ServerBinaryValue.normalize(ServerBinaryValue.java:193)
at
org.apache.directory.server.core.entry.ServerBinaryValue.getNormalizedValueReference(ServerBinaryValue.java:238)
at
org.apache.directory.server.core.entry.ServerBinaryValue.hashCode(ServerBinaryValue.java:469)
at java.util.HashMap.getEntry(HashMap.java:344)
at java.util.HashMap.containsKey(HashMap.java:335)
at
org.apache.directory.shared.ldap.util.SequencedHashMap.containsKey(SequencedHashMap.java:299)
at
org.apache.directory.shared.ldap.util.SynchronizedLRUMap.get(SynchronizedLRUMap.java:99)
at
org.apache.directory.shared.ldap.schema.normalizers.CachingNormalizer.normalize(CachingNormalizer.java:90)
at
org.apache.directory.server.core.entry.ServerBinaryValue.normalize(ServerBinaryValue.java:203)
at
org.apache.directory.server.core.entry.ServerBinaryValue.getNormalizedValueReference(ServerBinaryValue.java:238)
at
org.apache.directory.server.core.entry.ServerBinaryValue.hashCode(ServerBinaryValue.java:469)
at java.util.HashMap.getEntry(HashMap.java:344)
at java.util.HashMap.containsKey(HashMap.java:335)
at
org.apache.directory.shared.ldap.util.SequencedHashMap.containsKey(SequencedHashMap.java:299)
at
org.apache.directory.shared.ldap.util.SynchronizedLRUMap.get(SynchronizedLRUMap.java:99)
at
org.apache.directory.shared.ldap.schema.normalizers.CachingNormalizer.normalize(CachingNormalizer.java:90)
at
org.apache.directory.server.core.entry.ServerBinaryValue.normalize(ServerBinaryValue.java:203)
at
org.apache.directory.server.core.entry.ServerBinaryValue.getNormalizedValueReference(ServerBinaryValue.java:238)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.