You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Lorin Metzger (JIRA)" <ji...@apache.org> on 2010/01/15 02:36:54 UTC

[jira] Updated: (DIRSERVER-1457) Binary Attribute Type causes java.lang.StackOverflowError

     [ https://issues.apache.org/jira/browse/DIRSERVER-1457?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lorin Metzger updated DIRSERVER-1457:
-------------------------------------

    Attachment: apacheds-rolling.log

ApacheDS Log file

> 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
>         Attachments: apacheds-rolling.log
>
>
> 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.