Adding two schema elements of different type with the same OID is allowed, but 
it should not  
----------------------------------------------------------------------------------------------

                 Key: DIRSERVER-904
                 URL: https://issues.apache.org/jira/browse/DIRSERVER-904
             Project: Directory ApacheDS
          Issue Type: Bug
          Components: schema
    Affects Versions: 1.5.0
         Environment: * ApacheDS 1.5.0
* Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
* Windows XP Professional SP2
            Reporter: Stefan Zoerner


If I try to add two schema elements with the same OID dynamically, the behavior 
depends on the type of the elements (whether it differs or not).
It is possible to add an object class and an an attribute type with the same 
OID, here is an example (OID 9.9.9 used for demonstration purposes):

LDIF of attribute type (also attached):

dn: m-oid=9.9.9,ou=attributeTypes,cn=other,ou=schema
m-usage: USER_APPLICATIONS
m-equality: integerOrderingMatch
objectClass: metaAttributeType
objectClass: metaTop
objectClass: top
m-name: numberOfGuns
m-oid: 9.9.9
m-singleValue: TRUE
m-description: Number of guns of a ship
m-collective: FALSE
m-obsolete: FALSE
m-noUserModification: FALSE
m-syntax: 1.3.6.1.4.1.1466.115.121.1.27

LDIF of object class:

dn: m-oid=9.9.9,ou=objectClasses,cn=other,ou=schema
objectClass: top
objectClass: metaTop
objectClass: metaObjectclass
m-supObjectClass: top
m-oid: 9.9.9
m-name: ship
m-must: cn
m-may: numberOfGuns
m-may: description
m-typeObjectClass: STRUCTURAL
m-obsolete: FALSE
m-description: A ship

The addition works, but it should not

$ ldapmodify -h localhost -p 10389 -D "uid=admin,ou=system" -w secret -a -f 
numberOfGunsAttr.ldif
adding new entry m-oid=9.9.9,ou=attributeTypes,cn=other,ou=schema
$ ldapmodify -h localhost -p 10389 -D "uid=admin,ou=system" -w secret -a -f 
shipObjectClass.ldif
adding new entry m-oid=9.9.9,ou=objectClasses,cn=other,ou=schema
$

If I try to add two attribute types with the same OID (for instance in 
different meta schemata), an error occurs:

$ ldapmodify -h localhost -p 10389 -D "uid=admin,ou=system" -w secret -a -f 
numberOfGunsAttr2.ldif
adding new entry m-oid=9.9.9,ou=attributeTypes,cn=sevenSeasSchema,ou=schema
ldap_add: Loop detected
ldap_add: additional info: failed to add entry 
m-oid=9.9.9,ou=attributeTypes,cn=sevenSeasSchema,ou=schema: attributeType w/ 
OID 9.9.9 has already been registered!
$

Although the "Loop detected" sounds strange to me, the behavior is correct (it 
is not possible to add an attribute type with an existing OID).


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to