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

Shutdown fails when attempting to remove an already removed partition

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Cannot Reproduce
    • 1.5.7
    • 2.0.0-M1
    • core
    • None

    Description

      > It seems that during service.shutdown() a call is made into the DN
      > class to get the name to shut down. Unfortunately, the call to
      > getName returns upName but the value called for the lookup to shut
      > down a partition has already been removed using the normName which
      > though they are different values refer to the same partition. So, the
      > partition is already removed but there is still a key that is stored
      > that references the removed partition - when the shutdown call tries
      > to remove the partition it can't be found (DefaultPartitionNexus 965).
      > This is a roundabout way of saying that the shutdown manifests a bug
      > which is really in the
      > DefaultNexusPartition.initializeSystemPartition() call that invokes DN.getName instead of DN.getNormName - see line 335.

      Dec 2, 2010 9:51:59 AM org.apache.directory.server.core.partition.DefaultPartitionNexus removeContextPartition
      SEVERE: ERR_35 No partition with suffix

      {0} can be found in the NamingContexts
      Dec 2, 2010 9:51:59 AM org.apache.directory.server.core.partition.DefaultPartitionNexus doDestroy
      WARNING: Failed to destroy a partition: ou=system
      javax.naming.NameNotFoundException: ERR_35 No partition with suffix {0}

      can be found in the NamingContexts
      at org.apache.directory.server.core.partition.DefaultPartitionNexus.removeContextPartition(DefaultPartitionNexus.java:981)
      at org.apache.directory.server.core.partition.DefaultPartitionNexus.doDestroy(DefaultPartitionNexus.java:385)
      at org.apache.directory.server.core.partition.AbstractPartition.destroy(AbstractPartition.java:98)
      at org.apache.directory.server.core.DefaultDirectoryService.shutdown(DefaultDirectoryService.java:965)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:618)
      at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
      at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
      at com.textura.cpms.service.app.testutils.LdapUtil.shutdown(LdapUtil.groovy:207)
      at com.textura.cpms.service.app.testutils.LdapUtil$shutdown.call(Unknown Source)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120)
      at com.textura.cpms.service.app.testutils.LdapUtil.main(LdapUtil.groovy:93)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:618)
      at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
      at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      at groovy.lang.MetaClassImpl.invokeStaticMethod(MetaClassImpl.java:1302)
      at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:767)
      at groovy.lang.GroovyShell.runScriptOrMainOrTestOrRunnable(GroovyShell.java:271)
      at groovy.lang.GroovyShell.run(GroovyShell.java:227)
      at groovy.lang.GroovyShell.run(GroovyShell.java:157)
      at groovy.ui.GroovyMain.processOnce(GroovyMain.java:496)
      at groovy.ui.GroovyMain.run(GroovyMain.java:311)
      at groovy.ui.GroovyMain.process(GroovyMain.java:297)
      at groovy.ui.GroovyMain.processArgs(GroovyMain.java:112)
      at groovy.ui.GroovyMain.main(GroovyMain.java:93)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:618)
      at org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:108)
      at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:130)
      Dec 2, 2010 9:51:59 AM org.apache.directory.server.core.DefaultDirectoryService shutdown
      INFO: Waiting for SynchWorkerThread to die.

      Attachments

        Activity

          People

            akiran Kiran Ayyagari
            vtecinc Doug Tillman
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: