You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Emmanuel Lecharny (JIRA)" <ji...@apache.org> on 2013/01/18 17:42:12 UTC

[jira] [Commented] (DIRSERVER-1793) Stack overflow when trying to add binary attribute

    [ https://issues.apache.org/jira/browse/DIRSERVER-1793?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13557332#comment-13557332 ] 

Emmanuel Lecharny commented on DIRSERVER-1793:
----------------------------------------------

It can't be with 2.0.0-M8 : the ServerBinaryValue class has been removed in 2010, in 1.5.8.
                
> Stack overflow when trying to add binary attribute
> --------------------------------------------------
>
>                 Key: DIRSERVER-1793
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1793
>             Project: Directory ApacheDS
>          Issue Type: Bug
>          Components: ldap
>    Affects Versions: 2.0.0-M8
>         Environment: I'm using embedded Apache DS 2.0 M8 on a windows 7 system, using Java -version:
>  java version "1.7.0_11"
> Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
> Java HotSpot(TM) Client VM (build 23.6-b04, mixed mode, sharing)
>            Reporter: Jon Russell
>
> I have the following:
>             ServerEntry newEntry = service.newEntry (new LdapDN (dnString));
>             newEntry.add ("objectClass", "top", "DeploymentBlock");
>             newEntry.add ("ou", baseString);
>             newEntry.add ("name", "deployment");
>             newEntry.add ("cn", bladeUUID);
>             newEntry.add ("ibm-imm", BOFMdata);
>             service.getAdminSession ().add (newEntry);
>             OfmLogHandler.DEBUG ("Done adding block!");
> Where BOFMdata is a byte array (byte[]). I've defined ibm-imm in my ldif as following:
> dn: m-oid=1.3.6.1.4.1.18060.0.9.3.1.9, ou=attributeTypes, cn=other, ou=schema
> objectclass: metaAttributeType
> objectclass: metaTop
> objectclass: top
> m-oid: 1.3.6.1.4.1.18060.0.9.3.1.9
> m-name: ibm-imm
> m-description: the actual block data being stored
> m-equality: caseIgnoreIA5Match
> m-ordering: caseIgnoreOrderingMatch
> m-substr: caseIgnoreSubstringsMatch
> m-syntax: 1.3.6.1.4.1.1466.115.121.1.40
> m-length: 32700
> m-singleValue: TRUE
> When this code is executed, it produces a stack overflow:
> java.lang.StackOverflowError
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)
>         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.hash(Unknown Source)
>         at java.util.HashMap.getEntry(Unknown Source)
>         at java.util.HashMap.containsKey(Unknown Source)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira