Uploaded image for project: 'Directory ApacheDS'
  1. Directory ApacheDS
  2. DIRSERVER-2359

Search request results in OPERATIONS_ERROR due NPE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.0.0.AM26
    • 2.0.0.AM27
    • None
    • None

    Description

      This query worked with apache DS 1.5.x, but after upgrading to 2.0.0.AM26 it fails with NPE. This is an integration test of our app, client side did not change, we merely upgraded ApacheDS from ancient 1.5.5 to 2.0.0.AM26 and IT started failing.

      Caused by: javax.naming.NamingException: 
      [LDAP: error code 1 - OPERATIONS_ERROR: failed for MessageType : SEARCH_REQUEST
      Message ID : 15
          SearchRequest
              baseDn : 'ou=groups,o=sonatype'
              filter : '(|(&(&(cn=:[6])(uniqueMember=cn=cstamas))(objectClass=groupOfUniqueNames))(objectClass=referral))'
              scope : single level
              typesOnly : false
              Size Limit : no limit
              Time Limit : no limit
              Deref Aliases : deref Always
              attributes : 'cn'
      org.apache.directory.api.ldap.model.message.SearchRequestImpl@452356ce: null:
      org.apache.directory.api.ldap.model.exception.LdapOperationErrorException
          at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.search(AbstractBTreePartition.java:1232)
          at org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.search(DefaultPartitionNexus.java:647)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor$1.search(BaseInterceptor.java:206)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.subtree.SubentryInterceptor.search(SubentryInterceptor.java:1646)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.collective.CollectiveAttributeInterceptor.search(CollectiveAttributeInterceptor.java:181)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.operational.OperationalAttributeInterceptor.search(OperationalAttributeInterceptor.java:544)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.schema.SchemaInterceptor.search(SchemaInterceptor.java:1497)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.authz.DefaultAuthorizationInterceptor.search(DefaultAuthorizationInterceptor.java:365)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.authz.AciAuthorizationInterceptor.search(AciAuthorizationInterceptor.java:1247)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.authn.AuthenticationInterceptor.search(AuthenticationInterceptor.java:1390)
          at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:596)
          at org.apache.directory.server.core.normalization.NormalizationInterceptor.search(NormalizationInterceptor.java:414)
          at org.apache.directory.server.core.DefaultOperationManager.search(DefaultOperationManager.java:1831)
          at org.apache.directory.server.core.shared.DefaultCoreSession.search(DefaultCoreSession.java:1219)
          at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.doSimpleSearch(SearchRequestHandler.java:797)
          at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handleIgnoringReferrals(SearchRequestHandler.java:1147)
          at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handleWithReferrals(SearchRequestHandler.java:1245)
          at org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:211)
          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:829)
      Caused by: java.lang.NullPointerException
          at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.hasUserIndexOn(AbstractBTreePartition.java:3275)
          at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.hasIndexOn(AbstractBTreePartition.java:3296)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.getSubstringScan(DefaultOptimizer.java:416)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.annotate(DefaultOptimizer.java:175)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.getConjunctionScan(DefaultOptimizer.java:264)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.annotate(DefaultOptimizer.java:204)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.getConjunctionScan(DefaultOptimizer.java:264)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.annotate(DefaultOptimizer.java:204)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.getDisjunctionScan(DefaultOptimizer.java:294)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.annotate(DefaultOptimizer.java:208)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.getConjunctionScan(DefaultOptimizer.java:264)
          at org.apache.directory.server.xdbm.search.impl.DefaultOptimizer.annotate(DefaultOptimizer.java:204)
          at org.apache.directory.server.xdbm.search.impl.DefaultSearchEngine.computeResult(DefaultSearchEngine.java:245)
          at org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.search(AbstractBTreePartition.java:1219)
          ... 38 more

      Attachments

        Activity

          People

            Unassigned Unassigned
            cstamas Tamas Cservenak
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: