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/12 11:42:00 UTC

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

     [ https://issues.apache.org/jira/browse/DIRSERVER-2315?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kaamil Jasani updated DIRSERVER-2315:
-------------------------------------
    Attachment: arcticlake_schema.ldif

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