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:34:54 UTC

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

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.


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

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DIRSERVER-1457?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emmanuel Lecharny updated DIRSERVER-1457:
-----------------------------------------

    Fix Version/s: 2.0.0-RC1

We still have to fix the issue : if the specified MatchingRule does not fit the syntax, then we should throw an exception when the AttributeType is being added into the schema.

In the exposed use case, a caseIgnoreMatch EQUALITY matchingRule cannot be applied on a binary AttributeType :

RFC 4517 :

"4.2.11.  caseIgnoreMatch

   The caseIgnoreMatch rule compares an assertion value of the Directory
   String syntax to an attribute value of a syntax (e.g., the Directory
   String, Printable String, Country String, or Telephone Number syntax)
   whose corresponding ASN.1 type is DirectoryString or one of its
   alternative string types."

> 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
>             Fix For: 2.0.0-RC1
>
>         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.


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

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DIRSERVER-1457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12800504#action_12800504 ] 

Emmanuel Lecharny commented on DIRSERVER-1457:
----------------------------------------------

Thanks for the report.

There is obviously something wrong in the server, and it will be investigated.

I would suggest that you use the OctetString syntax (1.3.6.1.4.1.1466.115.121.1.40) instead of the binary one (1.3.6.1.4.1.1466.115.121.1.5 ) as it has been removed from the available syntax in LDP (RFC 4517, Appendix B, point 12) . Also do not associate an EQUALITY matching rule to this AttributeType, as it's a binary one. I think those two modifications should fix your problem.

> 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.


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

Posted by "Lorin Metzger (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DIRSERVER-1457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12800508#action_12800508 ] 

Lorin Metzger commented on DIRSERVER-1457:
------------------------------------------

Thanks, for the additional information.   I added caseIgnoreMatch because I could not get it to create the attribute type without it.

Ex, with ldapmodify

ldap_initialize( ldap://localhost:10389 )
add attributeTypes:
	( 1.3.6.1.4.1.65536.0.4.3.2.1       
          NAME 'template'       
          DESC 'Template Data'       
          SYNTAX 1.3.6.1.4.1.1466.115.121.1.5       
          SINGLE-VALUE)
modifying entry "cn=schema"
ldap_modify: Server is unwilling to perform (53)
	additional info: UNWILLING_TO_PERFORM: failed for     Modify Request
        Object : '2.5.4.3=schema'
            Modification[0]
                Operation :  add
                Modification
    attributeTypes: ( 1.3.6.1.4.1.65536.0.4.3.2.1       NAME 'template'       DESC 'Template Data'       SYNTAX 1.3.6.1.4.1.1466.115.121.1.5       SINGLE-VALUE)
: Cannot permit the addition of an attributeType with an no EQUALITY matchingRule 
and no super type from which to derive an EQUALITY matchingRule.


> 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
>             Fix For: 2.0.0-RC1
>
>         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.


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

Posted by "Emmanuel Lecharny (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DIRSERVER-1457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12800513#action_12800513 ] 

Emmanuel Lecharny commented on DIRSERVER-1457:
----------------------------------------------

Ouch !!!

That's another serious bug :/ 

Let me investigate it tomorrow...

> 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
>             Fix For: 2.0.0-RC1
>
>         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.


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

Posted by "Lorin Metzger (JIRA)" <ji...@apache.org>.
     [ 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.