Uploaded image for project: 'Directory ApacheDS'
  1. Directory ApacheDS
  2. DIRSERVER-1401

Infinite loop on moddn, when moving an entry below itself

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 1.5.4, 1.5.5
    • Fix Version/s: 1.5.6
    • Component/s: ldap
    • Labels:
      None

      Description

      Running the following LDIF causes an infinite loop (100% CPU of the ApacheDS process), the client waits for response. The two entries are created, the moddn operation then hangs.

      -------------------------------------------------------------------------------

      1. create parent entry
        dn: ou=parent,dc=example,dc=com
        changetype: add
        objectClass: organizationalUnit
        objectClass: top
        ou: parent
      1. create child entry
        dn: ou=child,ou=parent,dc=example,dc=com
        changetype: add
        objectClass: organizationalUnit
        objectClass: top
        ou: child
      1. now do something bad: make the parent a child of its own child
        dn: ou=parent,dc=example,dc=com
        changetype: moddn
        newrdn: ou=parent
        deleteoldrdn: 1
        newsuperior: ou=child,ou=parent,dc=example,dc=com

      -------------------------------------------------------------------------------

      I'd expect an error, OpenLDAP for example returns "error code 53 - cannot place an entry below itself"

      Another problem: When I kill the server and start it again, the two inserted entries are not visible studio, but when trying to add them I get an "error code 68 - ENTRY_ALREADY_EXISTS". Seems loke the indices got corrupted.

        Attachments

          Activity

            People

            • Assignee:
              akiran Kiran Ayyagari
              Reporter:
              seelmann Stefan Seelmann
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: