[ http://issues.apache.org/jira/browse/DIRSERVER-586?page=comments#action_12431848 ] Trustin Lee commented on DIRSERVER-586: --------------------------------------- I loaded the attached bugreport project in my eclipse workbench and ran the tests including TestHang.java. The tests don't hang but they prints out some errors: INFO 2006-08-31 18:49:56,533 [ldap.Mapping; main]: LDAP mapping initialized DEBUG 2006-08-31 18:49:56,536 [ldap.Mapping; main]: load(): type=class com.levigo.tcat.common.model.OrganizationalUnit, ctx=javax.naming.directory.InitialDirContext@2c1e6b, dn=ou=appgroups DEBUG 2006-08-31 18:49:56,537 [ldap.TypeMapping; main]: loading object of class com.levigo.tcat.common.model.OrganizationalUnit for dn=ou=appgroups DEBUG 2006-08-31 18:49:56,537 [ldap.Mapping; main]: create(): create=class com.levigo.tcat.common.model.OrganizationalUnit DEBUG 2006-08-31 18:49:56,538 [ldap.Mapping; main]: save(): object=com.levigo.tcat.common.model.OrganizationalUnit@811c88, ctx=javax.naming.directory.InitialDirContext@2c1e6b, baseDN= DEBUG 2006-08-31 18:49:56,538 [ldap.AttributeMapping; main]: dehydrating object of type class com.levigo.tcat.common.model.OrganizationalUnit DEBUG 2006-08-31 18:49:56,539 [ldap.AttributeMapping; main]: dehydrating object of type class com.levigo.tcat.common.model.OrganizationalUnit DEBUG 2006-08-31 18:49:56,543 [ldap.Mapping; main]: list(): type=class com.levigo.tcat.common.model.Client, ctx=null, filter=null, searchBase=null DEBUG 2006-08-31 18:49:56,546 [ldap.TypeMapping; main]: listing objects of class com.levigo.tcat.common.model.Client for base=ou=clients, filter=null com.levigo.tcat.common.directory.DirectoryException: Can't save object at com.levigo.tcat.common.directory.ldap.TypeMapping.save(TypeMapping.java:354) at com.levigo.tcat.common.directory.ldap.Mapping.save(Mapping.java:173) at com.levigo.tcat.common.directory.ldap.LDAPDirectory.setupBaseStructure(LDAPDirectory.java:116) at com.levigo.tcat.common.directory.ldap.LDAPDirectory.(LDAPDirectory.java:88) at LDAPDirectoryTest.getDirectory(LDAPDirectoryTest.java:34) at LDAPDirectoryTest.setUp(LDAPDirectoryTest.java:42) at junit.framework.TestCase.runBare(TestCase.java:125) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) Caused by: com.levigo.tcat.common.directory.DirectoryException: Can't marshal instance of class com.levigo.tcat.common.model.OrganizationalUnit at com.levigo.tcat.common.directory.ldap.TypeMapping.saveNewObject(TypeMapping.java:393) at com.levigo.tcat.common.directory.ldap.TypeMapping.save(TypeMapping.java:352) ... 18 more Caused by: javax.naming.OperationNotSupportedException: [LDAP: error code 53 - no global superior knowledge]; remaining name 'ou=appgroups' at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3058) at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2931) at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2737) at com.sun.jndi.ldap.LdapCtx.c_createSubcontext(LdapCtx.java:770) at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_createSubcontext(ComponentDirContext.java:319) at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.createSubcontext(PartialCompositeDirContext.java:248) at javax.naming.directory.InitialDirContext.createSubcontext(InitialDirContext.java:183) at com.levigo.tcat.common.directory.ldap.TypeMapping.saveNewObject(TypeMapping.java:374) ... 19 more Any clue? > Reliable hang of DS during query > -------------------------------- > > Key: DIRSERVER-586 > URL: http://issues.apache.org/jira/browse/DIRSERVER-586 > Project: Directory ApacheDS > Issue Type: Bug > Environment: DS 0.9.3, Windows, JDK 1.5 > Reporter: Jörg Henne > Assigned To: Emmanuel Lecharny > Attachments: bugreport.zip, TestHang.java > > > When running the attached test, the directory server hangs after executing a slew of operations when searching for objects. > First of all, some background on the test case: > The attached test case (in the form of an exported eclipse project) is, unfortunately, based on quite a few classes. They are part of a project I am currently working on: an object to ldap mapper with a similar approach as castor for XML or hibernate for RDBMS, albeit a lot more modest in complexity (I'll, hopefully, one day be able to open-source it - for now it is still much to immature). I have supplied all that stuff mainly for your reference. > To run the test case, please make sure that the constant "URL" in LDAPDirectoryTest points to a valid directory. The URL the context points to must exist. It will, however, subsequently create lots of nodes below it. > The hang seems to be related to some kind of deadlock, since it doesn't occur once the whole test is run via a single context only. To achieve this, set the constant "ONE_CONTEXT" to true (each LDAPDirectory uses its own set of contexts). > If you have any problems running the test, please don't hesitate to contact me. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira