Le 09/08/16 à 00:30, Hal Deadman a écrit :
> I have two servers running M21 and replicating to each other. I stopped the
> both and replaced the M21 jars with M23 jars and restarted the servers.
> They started up but when I connected to the servers I couldn't see any
> data. I also saw the following exception in the log on startup:
>
> [18:08:48] INFO [org.apache.directory.server.ldap.LdapServer] - Added
> Extended Request Handler: 1.3.6.1.4.1.4203.1.11.3
> [18:08:48] INFO [org.apache.directory.server.ldap.LdapServer] - Added
> Extended Request Handler: 1.3.6.1.4.1.18060.0.1.3
> [18:08:48] INFO [org.apache.directory.server.ldap.LdapServer] - Added
> Extended Request Handler: 1.3.6.1.4.1.4203.1.11.1
> [18:08:48] INFO [org.apache.directory.server.ldap.LdapServer] - Added
> Extended Request Handler: 1.3.6.1.4.1.1466.20037
> [18:08:48] ERROR [org.apache.directory.server.PROVIDER_LOG] - Failed to
> load the replica information
> java.lang.NullPointerException
> at
> org.apache.directory.api.ldap.model.schema.AttributeTypeOptions.hashCode(AttributeTypeOptions.java:156)
> at java.util.HashMap.hash(HashMap.java:338)
> at java.util.HashMap.containsKey(HashMap.java:595)
> at java.util.HashSet.contains(HashSet.java:203)
> at
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.processSubordinates(OperationalAttributeInterceptor.java:660)
> at
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.access$600(OperationalAttributeInterceptor.java:76)
> at
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor$SubordinatesSearchFilter.accept(OperationalAttributeInterceptor.java:178)
> at
> org.apache.directory.server.core.api.filtering.EntryFilteringCursorImpl.next(EntryFilteringCursorImpl.java:454)
> at
> org.apache.directory.server.ldap.replication.provider.ReplConsumerManager.getReplicaEventLogs(ReplConsumerManager.java:277)
> at
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.loadReplicaInfo(SyncReplRequestHandler.java:1027)
> at
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.start(SyncReplRequestHandler.java:211)
> at
> org.apache.directory.server.ldap.LdapServer.startReplicationProducer(LdapServer.java:567)
> at org.apache.directory.server.ldap.LdapServer.start(LdapServer.java:497)
> at
> org.apache.directory.server.ApacheDsService.startLdap(ApacheDsService.java:425)
> at
> org.apache.directory.server.ApacheDsService.start(ApacheDsService.java:187)
> at
> org.apache.directory.server.wrapper.ApacheDsTanukiWrapper.start(ApacheDsTanukiWrapper.java:203)
> at
> org.tanukisoftware.wrapper.WrapperManager$12.run(WrapperManager.java:2788)
> [18:08:48] INFO [org.apache.directory.server.ldap.LdapServer] - Successful
> bind of an LDAP Service (636) is completed.
> [18:08:48] INFO [org.apache.directory.server.ldap.LdapServer] - Successful
> bind of an LDAP Service (389) is completed.
>
>
>
> After startup their were lots of NPEs, mostly during attempts at
> replication:
>
> Caused by: java.lang.NullPointerException
> at
> org.apache.directory.api.ldap.model.schema.AttributeTypeOptions.hashCode(AttributeTypeOptions.java:156)
> at java.util.HashMap.hash(HashMap.java:338)
> at java.util.HashMap.containsKey(HashMap.java:595)
> at java.util.HashSet.contains(HashSet.java:203)
> at
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.processSubordinates(OperationalAttributeInterceptor.java:660)
> at
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.access$600(OperationalAttributeInterceptor.java:76)
> at
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor$SubordinatesSearchFilter.accept(OperationalAttributeInterceptor.java:178)
> at
> org.apache.directory.server.core.api.filtering.EntryFilteringCursorImpl.next(EntryFilteringCursorImpl.java:454)
> at
> org.apache.directory.server.core.shared.DefaultCoreSession.sortResults(DefaultCoreSession.java:1310)
> at
> org.apache.directory.server.core.shared.DefaultCoreSession.search(DefaultCoreSession.java:1126)
> ... 19 more
>
>
> I went back to the M21 jars and the servers are working again. I will try
> upgrade later with and fresh instance and ldif export/import of the config
> and data.

Ah, crap... We added 2 newoperational attributes (nbChildren,
nbSubordinates, that contains the number of direct children and the
number of subordiante). Those AT will be missing and you'll get a NPE
when starting M23 with the M21 schema...

The server should work with your data, but with M23 schema. One option
would be to install M23, and just copy your partition data.

Reply via email to