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

Slavomir Kocka commented on DIRSERVER-1864:
-------------------------------------------

What I can say is, that issue happens, when there is parallel read during RW 
operation from queue... During this night, everything was processed 
correctly... During working hours yesterday, LDAP DB was screwed.... :(
Let me know, if there is any logging, or something, which would help to 
identify the issue
                
> 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