Slavomir Kocka created DIRSERVER-1864:
-----------------------------------------

             Summary: search fails in ApacheDS using Spring LDAP
                 Key: DIRSERVER-1864
                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1864
             Project: Directory ApacheDS
          Issue Type: Bug
    Affects Versions: 2.0.0-M12
         Environment: RedHat 5.8 
java version "1.6.0_45" 
Java(TM) SE Runtime Environment (build 1.6.0_45-b06) 
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
            Reporter: Slavomir Kocka
            Priority: Blocker


When searching using Spring LDAP, after some time we get following error in 
Websphere Logs:

[6/20/13 13:35:42:921 CEST] 000000f8 UserServiceEn E 
sk.statistics.isis.ivisiam.common.exceptions.ExceptionHandler toIsisFault 
generateUserAccounts - IVIS-109000 InternalError
                                 
sk.statistics.isis.ivisiam.common.exceptions.BusinessServiceException: 
InternalError
        at 
sk.statistics.isis.ivisiam.common.exceptions.ExceptionHandler.toIsisFault(ExceptionHandler.java:32)
        at 
sk.statistics.isis.ivisiam.ws.UserServiceEndpoint.generateUserAccounts(UserServiceEndpoint.java:550)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
        at java.lang.reflect.Method.invoke(Method.java:611)
        at 
org.apache.axis2.jaxws.server.dispatcher.JavaDispatcher.invokeTargetOperation(JavaDispatcher.java:101)
        at 
org.apache.axis2.jaxws.server.dispatcher.JavaBeanDispatcher.invoke(JavaBeanDispatcher.java:118)
        at 
org.apache.axis2.jaxws.server.EndpointController.invoke(EndpointController.java:111)
        at 
org.apache.axis2.jaxws.server.JAXWSMessageReceiver.receive(JAXWSMessageReceiver.java:161)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:208)
        at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
        at 
com.ibm.ws.websvcs.transport.http.WASAxis2Servlet.doPost(WASAxis2Servlet.java:1517)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:595)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1224)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:774)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
        at 
com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1032)
        at 
com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)
        at 
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:895)
        at 
com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
        at 
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:452)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:511)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:305)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
        at 
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
        at 
com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
        at 
com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
        at 
com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)
        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1659)
Caused by: org.springframework.ldap.UncategorizedLdapException: Uncategorized 
exception occured during LDAP processing; nested exception is 
javax.naming.NamingException: [LDAP: error code 80 - OTHER: failed for 
MessageType : SEARCH_REQUEST
Message ID : 2
    SearchRequest
        baseDn : 'ou=usersCreated,ou=users,ou=ivisIam'
        filter : '(&(objectClass=person:[1182])(cn=152_704_526371*:[?]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 
org.apache.directory.api.ldap.model.message.SearchRequestImpl@6ee08536    
ManageDsaITImpl Control
        Type OID    : '2.16.840.1.113730.3.4.2'
        Criticality : 'false'
'
: null]; Remaining name: 'ou=usersCreated,ou=users'
        at 
org.springframework.ldap.support.LdapUtils.convertLdapException(LdapUtils.java:217)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:319)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:259)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:606)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:524)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:473)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:493)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:513)
        at 
sk.statistics.isis.ivisiam.service.impl.UserAccountServiceImpl.findUserAccountsByAttribute(UserAccountServiceImpl.java:284)
        at 
sk.statistics.isis.ivisiam.service.impl.UserAccountServiceImpl.findUserAccountsByAttributeLike(UserAccountServiceImpl.java:251)
        at 
sk.statistics.isis.ivisiam.service.impl.UserAccountServiceImpl.findGeneratedUsers(UserAccountServiceImpl.java:533)
        at 
sk.statistics.isis.ivisiam.ws.UserServiceEndpoint.generateUserAccounts(UserServiceEndpoint.java:474)
        ... 34 more
Caused by: javax.naming.NamingException: [LDAP: error code 80 - OTHER: failed 
for MessageType : SEARCH_REQUEST
Message ID : 2
    SearchRequest
        baseDn : 'ou=usersCreated,ou=users,ou=ivisIam'
        filter : '(&(objectClass=person:[1182])(cn=152_704_526371*:[?]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 
org.apache.directory.api.ldap.model.message.SearchRequestImpl@6ee08536    
ManageDsaITImpl Control
        Type OID    : '2.16.840.1.113730.3.4.2'
        Criticality : 'false'
'
: null]; Remaining name: 'ou=usersCreated,ou=users'
        at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3123)
        at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3025)
        at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2832)
        at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1841)
        at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1764)
        at 
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:380)
        at 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:350)
        at 
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:333)
        at 
org.apache.aries.jndi.DelegateContext.search(DelegateContext.java:365)
        at 
javax.naming.directory.InitialDirContext.search(InitialDirContext.java:245)
        at 
org.springframework.ldap.core.LdapTemplate$4.executeSearch(LdapTemplate.java:253)
        at 
org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:293)
        ... 44 more


After enabling some more logging in ApacheDS we got also some errors there (it 
is not the log from same incident as above):

[13:59:16] DEBUG 
[org.apache.directory.server.ldap.handlers.request.BindRequestHandler] - 
Returned SUCCESS message: MessageType : BIND_RESPONSE
Message ID : 1
    BindResponse
        Ldap Result
            Result code : (SUCCESS) success
            Matched Dn : 'null'
            Diagnostic message : 'null'
.
[13:59:16] DEBUG 
[org.apache.directory.server.ldap.handlers.request.SearchRequestHandler] - 
Handling single reply request: MessageType : SEARCH_REQUEST
Message ID : 2
    SearchRequest
        baseDn : 'ou=usersCreated,ou=users,ou=ivisIam'
        filter : '(&(objectclass=person)(cn=152_713_528731*))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 
org.apache.directory.api.ldap.model.message.SearchRequestImpl@648f9f60    
ManageDsaITImpl Control
        Type OID    : '2.16.840.1.113730.3.4.2'
        Criticality : 'false'
'

[13:59:16] DEBUG 
[org.apache.directory.server.ldap.handlers.request.SearchRequestHandler] - 
ManageDsaITControl detected.
[13:59:16] DEBUG 
[org.apache.directory.server.ldap.handlers.request.SearchRequestHandler] - 
Message received:  MessageType : SEARCH_REQUEST
Message ID : 2
    SearchRequest
        baseDn : 'ou=usersCreated,ou=users,ou=ivisIam'
        filter : '(&(cn=152_713_528731*)(objectclass=person))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 
org.apache.directory.api.ldap.model.message.SearchRequestImpl@648f9f60    
ManageDsaITImpl Control
        Type OID    : '2.16.840.1.113730.3.4.2'
        Criticality : 'false'
'

[13:59:16] DEBUG 
[org.apache.directory.server.ldap.handlers.request.SearchRequestHandler] - 
using <9223372036854775807,9223372036854775807> for size limit
[13:59:17] DEBUG 
[org.apache.directory.server.ldap.handlers.request.SearchRequestHandler] - 
OTHER: failed for MessageType : SEARCH_REQUEST
Message ID : 2
    SearchRequest
        baseDn : 'ou=usersCreated,ou=users,ou=ivisIam'
        filter : '(&(cn=152_713_528731*:[?])(objectClass=person:[1182]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 
org.apache.directory.api.ldap.model.message.SearchRequestImpl@ee260f6b    
ManageDsaITImpl Control
        Type OID    : '2.16.840.1.113730.3.4.2'
        Criticality : 'false'
'
: null
org.apache.directory.api.ldap.model.cursor.CursorException
        at 
org.apache.directory.server.core.partition.impl.btree.EntryCursorAdaptor.get(EntryCursorAdaptor.java:185)
        at 
org.apache.directory.server.core.partition.impl.btree.EntryCursorAdaptor.get(EntryCursorAdaptor.java:45)
        at 
org.apache.directory.server.core.api.filtering.BaseEntryFilteringCursor.next(BaseEntryFilteringCursor.java:379)
        at 
org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.writeResults(SearchRequestHandler.java:391)
        at 
org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.doSimpleSearch(SearchRequestHandler.java:841)
        at 
org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handleIgnoringReferrals(SearchRequestHandler.java:1148)
        at 
org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:206)
        at 
org.apache.directory.server.ldap.handlers.request.SearchRequestHandler.handle(SearchRequestHandler.java:92)
        at 
org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:207)
        at 
org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:56)
        at 
org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:221)
        at 
org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:217)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:690)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
        at 
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
        at 
org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:74)
        at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63)
        at 
org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTask(UnorderedThreadPoolExecutor.java:474)
        at 
org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:428)
        at java.lang.Thread.run(Thread.java:662)
Caused by: 
org.apache.directory.api.ldap.model.exception.LdapOperationErrorException
        at 
org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.fetch(AbstractBTreePartition.java:1083)
        at 
org.apache.directory.server.xdbm.search.evaluator.SubtreeScopeEvaluator.evaluate(SubtreeScopeEvaluator.java:169)
        at 
org.apache.directory.server.xdbm.search.evaluator.AndEvaluator.evaluate(AndEvaluator.java:110)
        at 
org.apache.directory.server.core.partition.impl.btree.EntryCursorAdaptor.get(EntryCursorAdaptor.java:169)
        ... 20 more
Caused by: org.apache.directory.api.ldap.model.exception.LdapOtherException
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmTable.get(JdbmTable.java:353)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex.reverseLookup(JdbmIndex.java:364)
        at 
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex.reverseLookup(JdbmIndex.java:59)
        at 
org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.buildEntryDn(AbstractBTreePartition.java:2102)
        at 
org.apache.directory.server.core.partition.impl.btree.AbstractBTreePartition.fetch(AbstractBTreePartition.java:1077)
        ... 23 more
[13:59:17] DEBUG 
[org.apache.directory.server.ldap.handlers.request.UnbindRequestHandler] - 
Received: MessageType : UNBIND_REQUEST
Message ID : 3
    UnBind 
Requestorg.apache.directory.api.ldap.model.message.UnbindRequestImpl@41fedc8c   
 ManageDsaITImpl Control
        Type OID    : '2.16.840.1.113730.3.4.2'
        Criticality : 'false'
'

This issue we already noticed in ApacheDS 1.5.7 and it was the reason we moved 
towards 2.0.0.M* version...

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to