[ 
https://issues.apache.org/jira/browse/DIRSERVER-2315?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17134152#comment-17134152
 ] 

Kaamil Jasani commented on DIRSERVER-2315:
------------------------------------------

I have attached the schema that we were using. It just seems to happen upon 
trying to replicate entries which have an object class that does not have a 
superior class. It is a master-master replication, in case that matters.

> Having a schema with an object class that doesn't have any superior classes 
> causes crash on replication
> -------------------------------------------------------------------------------------------------------
>
>                 Key: DIRSERVER-2315
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-2315
>             Project: Directory ApacheDS
>          Issue Type: Bug
>          Components: replication, schema
>    Affects Versions: 2.0.0.AM26
>            Reporter: Kaamil Jasani
>            Priority: Minor
>         Attachments: arcticlake_schema.ldif
>
>
> Either that is a bug in that a superior class is not needed but this 
> exception still occurs, or perhaps if that is required then it would make 
> more sense to fail when the LDIF is applied?
> Warning and error logs:
> {code:java}
> [11:03:41] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - 
> Unexpected exception forcing session to close: sending disconnect notice to 
> client.
> org.apache.directory.api.ldap.model.exception.LdapException: 
> java.lang.IndexOutOfBoundsException: Index 0 out-of-bounds for length 0
>         at 
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.handleSyncRequest(SyncReplRequestHandler.java:351)
>         at 
> org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handleReplication(SearchRequestHandler.java:230)
>         at 
> org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:189)
>         at 
> org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:94)
>         at 
> org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:209)
>         at 
> org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:57)
>         at 
> org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:243)
>         at 
> org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:224)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:1015)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
>         at 
> org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:106)
>         at org.apache.mina.core.session.IoEvent.run(IoEvent.java:89)
>         at 
> org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTask(UnorderedThreadPoolExecutor.java:541)
>         at 
> org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:493)
>         at java.base/java.lang.Thread.run(Thread.java:844)
> Caused by: org.apache.directory.api.ldap.model.exception.LdapException: 
> java.lang.IndexOutOfBoundsException: Index 0 out-of-bounds for length 0
>         at 
> org.apache.directory.server.core.shared.DefaultCoreSession.search(DefaultCoreSession.java:1250)
>         at 
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.doSimpleSearch(SyncReplRequestHandler.java:655)
>         at 
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.doInitialRefresh(SyncReplRequestHandler.java:572)
>         at 
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.handleSyncRequest(SyncReplRequestHandler.java:313)
>         ... 16 more
> Caused by: java.lang.IndexOutOfBoundsException: Index 0 out-of-bounds for 
> length 0
>         at 
> java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
>         at 
> java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
>         at 
> java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
>         at java.base/java.util.Objects.checkIndex(Objects.java:372)
>         at java.base/java.util.ArrayList.get(ArrayList.java:440)
>         at 
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.processSubordinates(OperationalAttributeInterceptor.java:747)
>         at 
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.access$500(OperationalAttributeInterceptor.java:82)
>         at 
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor$SubordinatesSearchFilter.accept(OperationalAttributeInterceptor.java:191)
>         at 
> org.apache.directory.server.core.api.filtering.EntryFilteringCursorImpl.next(EntryFilteringCursorImpl.java:453)
>         at 
> org.apache.directory.server.core.shared.DefaultCoreSession.sortResults(DefaultCoreSession.java:1411)
>         at 
> org.apache.directory.server.core.shared.DefaultCoreSession.search(DefaultCoreSession.java:1223)
>         ... 19 more
> {code}
> {code:java}
> [11:03:41] ERROR [org.apache.directory.server.PROVIDER_LOG] - Failed to 
> handle the syncrepl request
> org.apache.directory.api.ldap.model.exception.LdapException: 
> java.lang.IndexOutOfBoundsException: Index 0 out-of-bounds for length 0
>         at 
> org.apache.directory.server.core.shared.DefaultCoreSession.search(DefaultCoreSession.java:1250)
>         at 
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.doSimpleSearch(SyncReplRequestHandler.java:655)
>         at 
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.doInitialRefresh(SyncReplRequestHandler.java:572)
>         at 
> org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler.handleSyncRequest(SyncReplRequestHandler.java:313)
>         at 
> org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handleReplication(SearchRequestHandler.java:230)
>         at 
> org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:189)
>         at 
> org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:94)
>         at 
> org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:209)
>         at 
> org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:57)
>         at 
> org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:243)
>         at 
> org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:224)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:1015)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:650)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:49)
>         at 
> org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1128)
>         at 
> org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:106)
>         at org.apache.mina.core.session.IoEvent.run(IoEvent.java:89)
>         at 
> org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTask(UnorderedThreadPoolExecutor.java:541)
>         at 
> org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:493)
>         at java.base/java.lang.Thread.run(Thread.java:844)
> Caused by: java.lang.IndexOutOfBoundsException: Index 0 out-of-bounds for 
> length 0
>         at 
> java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
>         at 
> java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
>         at 
> java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
>         at java.base/java.util.Objects.checkIndex(Objects.java:372)
>         at java.base/java.util.ArrayList.get(ArrayList.java:440)
>         at 
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.processSubordinates(OperationalAttributeInterceptor.java:747)
>         at 
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.access$500(OperationalAttributeInterceptor.java:82)
>         at 
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor$SubordinatesSearchFilter.accept(OperationalAttributeInterceptor.java:191)
>         at 
> org.apache.directory.server.core.api.filtering.EntryFilteringCursorImpl.next(EntryFilteringCursorImpl.java:453)
>         at 
> org.apache.directory.server.core.shared.DefaultCoreSession.sortResults(DefaultCoreSession.java:1411)
>         at 
> org.apache.directory.server.core.shared.DefaultCoreSession.search(DefaultCoreSession.java:1223)
>         ... 19 more
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to