[ https://issues.apache.org/jira/browse/DIRSERVER-1633?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pierre-Arnaud Marcelot resolved DIRSERVER-1633.
-----------------------------------------------
Resolution: Fixed
Fixed at revision 1145082.
http://svn.apache.org/viewvc?rev=1145082&view=rev
After some interesting chat sessions with Kiran and Alex, it turns out the issue was the fact
that:
- The cn=schemaModifications,ou=schema entry was stored on disk in a file name ou=schemaModifications.ldif.
Notice the different naming between cn and ou.
- On a second restart a second cn=schemaModifications.ldif was probably found on disk, explaining
the "Already existing entry" exception.
- There was also an issue with the schema loader which is expecting any cn=xxx entry under
ou=schema to be a starting point for a schema holder (with ATs, OCs, and other schema elements
underneath).
As a temporary fix, since there's a discussion going on the ML about this, I renamed the entry
'ou=schemaModifications,ou=schema', conforming to the file name on disk.
All tests are passing and the server can be restart without any issue now.
> Startup failure after first startup
> -----------------------------------
>
> Key: DIRSERVER-1633
> URL: https://issues.apache.org/jira/browse/DIRSERVER-1633
> Project: Directory ApacheDS
> Issue Type: Bug
> Components: core
> Reporter: Alex Karasulu
> Assignee: Alex Karasulu
> Priority: Blocker
> Fix For: 2.0.0-M2
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> The http-integration module allows wars to be put into the /var/lib/apacheds-${version}/webapps
folder to be deployed into the integrated Jetty server which provides access directly to the
DirectoryService without apps having to go through the network.
> Adding a war to this causes the following stack trace which prevents the server from
starting up. Seems to be a bug recently introduced.
> [16:24:07] ERROR [org.apache.directory.server.core.schema.SchemaPartition] - ERR_90 Failed
to initialize wrapped partition.
> org.apache.directory.shared.ldap.model.exception.LdapOtherException: ERR_250_ENTRY_ALREADY_EXISTS
cn=schemaModifications,ou=schema already exists!
> at org.apache.directory.server.core.partition.AbstractPartition.initialize(AbstractPartition.java:77)
> at org.apache.directory.server.core.schema.SchemaPartition.doInit(SchemaPartition.java:221)
> at org.apache.directory.server.core.partition.AbstractPartition.initialize(AbstractPartition.java:72)
> at org.apache.directory.server.core.DefaultDirectoryService.initialize(DefaultDirectoryService.java:1502)
> at org.apache.directory.server.core.DefaultDirectoryService.startup(DefaultDirectoryService.java:979)
> at org.apache.directory.server.ApacheDsService.initDirectoryService(ApacheDsService.java:279)
> at org.apache.directory.server.ApacheDsService.start(ApacheDsService.java:163)
> at org.apache.directory.server.ApacheDsTanukiWrapper.start(ApacheDsTanukiWrapper.java:71)
> at org.tanukisoftware.wrapper.WrapperManager$12.run(WrapperManager.java:2788)
> Caused by: org.apache.directory.shared.ldap.model.exception.LdapEntryAlreadyExistsException:
ERR_250_ENTRY_ALREADY_EXISTS cn=schemaModifications,ou=schema already exists!
> at org.apache.directory.server.xdbm.AbstractStore.add(AbstractStore.java:800)
> at org.apache.directory.server.core.partition.ldif.LdifPartition.loadEntries(LdifPartition.java:475)
> at org.apache.directory.server.core.partition.ldif.LdifPartition.loadEntries(LdifPartition.java:493)
> at org.apache.directory.server.core.partition.ldif.LdifPartition.doInit(LdifPartition.java:168)
> at org.apache.directory.server.core.partition.AbstractPartition.initialize(AbstractPartition.java:72)
> ... 8 more
> [16:24:07] ERROR [org.apache.directory.server.ApacheDsTanukiWrapper] - Failed to start
the service.
> org.apache.directory.shared.ldap.model.exception.LdapOtherException: org.apache.directory.shared.ldap.model.exception.LdapOtherException:
ERR_250_ENTRY_ALREADY_EXISTS cn=schemaModifications,ou=schema already exists!
> at org.apache.directory.server.core.partition.AbstractPartition.initialize(AbstractPartition.java:77)
> at org.apache.directory.server.core.DefaultDirectoryService.initialize(DefaultDirectoryService.java:1502)
> at org.apache.directory.server.core.DefaultDirectoryService.startup(DefaultDirectoryService.java:979)
> at org.apache.directory.server.ApacheDsService.initDirectoryService(ApacheDsService.java:279)
> at org.apache.directory.server.ApacheDsService.start(ApacheDsService.java:163)
> at org.apache.directory.server.ApacheDsTanukiWrapper.start(ApacheDsTanukiWrapper.java:71)
> at org.tanukisoftware.wrapper.WrapperManager$12.run(WrapperManager.java:2788)
> Caused by: java.lang.RuntimeException: org.apache.directory.shared.ldap.model.exception.LdapOtherException:
ERR_250_ENTRY_ALREADY_EXISTS cn=schemaModifications,ou=schema already exists!
> at org.apache.directory.server.core.schema.SchemaPartition.doInit(SchemaPartition.java:235)
> at org.apache.directory.server.core.partition.AbstractPartition.initialize(AbstractPartition.java:72)
> ... 6 more
> Caused by: org.apache.directory.shared.ldap.model.exception.LdapOtherException: ERR_250_ENTRY_ALREADY_EXISTS
cn=schemaModifications,ou=schema already exists!
> at org.apache.directory.server.core.partition.AbstractPartition.initialize(AbstractPartition.java:77)
> at org.apache.directory.server.core.schema.SchemaPartition.doInit(SchemaPartition.java:221)
> ... 7 more
> Caused by: org.apache.directory.shared.ldap.model.exception.LdapEntryAlreadyExistsException:
ERR_250_ENTRY_ALREADY_EXISTS cn=schemaModifications,ou=schema already exists!
> at org.apache.directory.server.xdbm.AbstractStore.add(AbstractStore.java:800)
> at org.apache.directory.server.core.partition.ldif.LdifPartition.loadEntries(LdifPartition.java:475)
> at org.apache.directory.server.core.partition.ldif.LdifPartition.loadEntries(LdifPartition.java:493)
> at org.apache.directory.server.core.partition.ldif.LdifPartition.doInit(LdifPartition.java:168)
> at org.apache.directory.server.core.partition.AbstractPartition.initialize(AbstractPartition.java:72)
> ... 8 more
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
|