[
https://issues.apache.org/jira/browse/DIRSERVER-1733?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13402420#comment-13402420
]
Hendy Irawan commented on DIRSERVER-1733:
-----------------------------------------
It turned out there were other entries that exhibit similar behavior.
>From about 1927 entries, exactly 13 entries had this behavior.
But the problem is now "solved", using Apache Directory Studio 1.5.3, I clicked
on "ou=users,dc=berbatik,dc=com" and delete it.... It's gone! Very weird.
This is the log :
#!RESULT ERROR
#!CONNECTION ldap://localhost:10389
#!DATE 2012-06-28T01:03:04.395
#!ERROR [LDAP: error code 66 - NOT_ALLOWED_ON_NON_LEAF: failed for MessageType
: DEL_REQUEST Message ID : 69 Del request Entry :
'uid=adi_ahmad_nurobi,ou=users,dc=berbatik,dc=com'
org.apache.directory.shared.ldap.model.message.DeleteRequestImpl@45312ccb:
ERR_700 [66] Cannot delete entry
uid=adi_ahmad_nurobi,ou=users,dc=berbatik,dc=com it has children!]
dn: uid=adi_ahmad_nurobi,ou=users,dc=berbatik,dc=com
changetype: delete
#!RESULT OK
#!CONNECTION ldap://localhost:10389
#!DATE 2012-06-28T01:03:21.424
dn: ou=users,dc=berbatik,dc=com
changetype: delete
As you can see, I tried to delete the entry but ApacheDS won't let me.
Then I tried to delete the parent entry but it succeeds.. and it's actually
gone including all the 13 problematic child entries.
Very weird.
> Cannot delete leaf entry -- Operation not allowed on non-leaf (66) -
> NOT_ALLOWED_ON_NON_LEAF: failed for MessageType : DEL_REQUEST
> ----------------------------------------------------------------------------------------------------------------------------------
>
> Key: DIRSERVER-1733
> URL: https://issues.apache.org/jira/browse/DIRSERVER-1733
> Project: Directory ApacheDS
> Issue Type: Bug
> Components: ldap
> Affects Versions: 2.0.0-M7
> Environment: java version "1.6.0_31"
> Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)
> Linux annafi.dev 3.0.0-21-generic #35-Ubuntu SMP Fri May 25 17:57:41 UTC 2012
> x86_64 x86_64 x86_64 GNU/Linux
> Reporter: Hendy Irawan
> Priority: Critical
>
> Right now, in my database it is impossible to delete an entry, although all
> the children has been deleted (i.e. it's a leaf entry) :
> ceefour@annafi:~$ ldapdelete -H ldap://localhost:10389/ -D
> uid=admin,ou=system -x -W uid=a_good_listener,ou=users,dc=berbatik,dc=com
> Enter LDAP Password:
>
> ldap_delete: Operation not allowed on non-leaf (66)
>
> additional info: NOT_ALLOWED_ON_NON_LEAF: failed for MessageType :
> DEL_REQUEST
> Message ID : 2
>
> Del request
>
> Entry : 'uid=a_good_listener,ou=users,dc=berbatik,dc=com'
>
> org.apache.directory.shared.ldap.model.message.DeleteRequestImpl@bec72d56:
> ERR_700 [66] Cannot delete entry
> uid=a_good_listener,ou=users,dc=berbatik,dc=com it has children!
> In addition, it's also not possible to rename the entry, with a weird error
> java.lang.String cannot be cast to java.lang.Long] :
> javax.naming.NamingException: [LDAP: error code 1 - OPERATIONS_ERROR:
> failed for MessageType : MODIFYDN_REQUEST
> Message ID : 2
> ModifyDN Response
> Entry : 'uid=a_good_listener,ou=users,dc=berbatik,dc=com'
> New Rdn : 'uid=a_good_listenerx'
> Delete old Rdn : true
> org.apache.directory.shared.ldap.model.message.ModifyDnRequestImpl@269d35c1:
> java.lang.String cannot be cast to java.lang.Long]; remaining name
> 'uid=a_good_listener,ou=users,dc=berbatik,dc=com'
> at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3107)
> at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3013)
> at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2820)
> at com.sun.jndi.ldap.LdapCtx.c_rename(LdapCtx.java:706)
> at
> com.sun.jndi.toolkit.ctx.ComponentContext.p_rename(ComponentContext.java:693)
> at
> com.sun.jndi.toolkit.ctx.PartialCompositeContext.rename(PartialCompositeContext.java:251)
> at
> org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper$3.run(JNDIConnectionWrapper.java:563)
> at
> org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.runAndMonitor(JNDIConnectionWrapper.java:1272)
> at
> org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.checkConnectionAndRunAndMonitor(JNDIConnectionWrapper.java:1203)
> at
> org.apache.directory.studio.connection.core.io.jndi.JNDIConnectionWrapper.renameEntry(JNDIConnectionWrapper.java:608)
> at
> org.apache.directory.studio.ldapbrowser.core.jobs.RenameEntryJob.renameEntry(RenameEntryJob.java:288)
> at
> org.apache.directory.studio.ldapbrowser.core.jobs.RenameEntryJob.executeNotificationJob(RenameEntryJob.java:141)
> at
> org.apache.directory.studio.ldapbrowser.core.jobs.AbstractNotificationJob.executeAsyncJob(AbstractNotificationJob.java:43)
> at
> org.apache.directory.studio.ldapbrowser.core.jobs.AbstractEclipseJob.run(AbstractEclipseJob.java:101)
> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
> If required, I can provide the partition data, but in private.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira