You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Kaamil Jasani (Jira)" <ji...@apache.org> on 2020/06/10 12:46:00 UTC

[jira] [Created] (DIRSERVER-2315) Having a schema with an object class that doesn't have any superior classes causes crash on replication

Kaamil Jasani created DIRSERVER-2315:
----------------------------------------

             Summary: 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


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: dev-unsubscribe@directory.apache.org
For additional commands, e-mail: dev-help@directory.apache.org