Timeout on ldap query against owner attribute during reassignment of tasks in worklistapp (Doc ID 2245937.1)

Last updated on MARCH 20, 2017

Applies to:

Oracle Business Process Management Suite - Version 12.1.3.0.0 and later
Information in this document applies to any platform.

Symptoms

When using the worklistapp to reassign tasks, and possibly in other actions as well, a timeout is encountered.   Below is the query and the exception:

 [#OUDAuthenticator] JNDI Adapter Search using:
  BindDN:
  Base: dc=us,dc=oracle,dc=com
  Scope: 2
  Attributes: [mail, sn, cn, description, usernameattr, givenname, loginid, objectclass, displayname, entryuuid, uid]
  Filter: owner=uid=test,ou=users,dc=us,dc=oracle,dc=com


Exeception that results from the query:

Remote Server Failure:{0}.
javax.naming.NamingException: LDAP response read timed out, timeout used:120000ms.; remaining name 'dc=calheers,dc=ca,dc=gov'
at com.sun.jndi.ldap.Connection.readReply(Connection.java:494)
at com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:638)
at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:561)
at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1986)
at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1848)
at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1773)
at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:276)
at oracle.ods.virtualization.engine.backend.jndi.ConnectionHandle.search(ConnectionHandle.java:270)
at oracle.ods.virtualization.engine.backend.jndi.JNDIEntrySet.initialize(JNDIEntrySet.java:223)
at oracle.ods.virtualization.engine.backend.jndi.BackendJNDI.get(BackendJNDI.java:755)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:303)
at oracle.ods.virtualization.engine.chain.BasePlugin.get(BasePlugin.java:89)
at oracle.ods.virtualization.engine.chain.plugins.hide.HideEntriesByFilter.get(HideEntriesByFilter.java:352)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.BasePlugin.get(BasePlugin.java:89)
at oracle.ods.virtualization.engine.chain.plugins.virtualattr.VirtualAttributePlugin.get(VirtualAttributePlugin.java:221)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.BasePlugin.get(BasePlugin.java:89)
at oracle.ods.virtualization.engine.chain.plugins.usermanagement.UserManagement.get(UserManagement.java:915)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.plugins.groupmembership.NestedGroupMembership.get(NestedGroupMembership.java:143)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.plugins.DMSMetrics.MonitorPerformance.get(MonitorPerformance.java:225)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.PluginChain.runGet(PluginChain.java:208)
at oracle.ods.virtualization.engine.chain.PluginManager.runGet(PluginManager.java:353)
at oracle.ods.virtualization.engine.chain.PluginManager.runGet(PluginManager.java:318)
at oracle.ods.virtualization.engine.backend.AdapterServiceInterface.getByAdapter(AdapterServiceInterface.java:585)
at oracle.ods.virtualization.engine.backend.AdapterServiceInterface.get(AdapterServiceInterface.java:456)
at oracle.ods.virtualization.engine.backend.BackendHandler.get(BackendHandler.java:431)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:295)
at oracle.ods.virtualization.engine.chain.BasePlugin.get(BasePlugin.java:89)
at oracle.ods.virtualization.engine.chain.plugins.uniqueentry.UniqueEntryPlugin.get(UniqueEntryPlugin.java:141)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.BasePlugin.get(BasePlugin.java:89)
at oracle.ods.virtualization.engine.chain.plugins.mlsfilter.MlsFilter.get(MlsFilter.java:125)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.plugins.genericmapping.GenericMapper.get(GenericMapper.java:266)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.plugins.DMSMetrics.MonitorPerformance.get(MonitorPerformance.java:225)
at oracle.ods.virtualization.engine.chain.Chain.nextGet(Chain.java:314)
at oracle.ods.virtualization.engine.chain.PluginChain.runGet(PluginChain.java:208)
at oracle.ods.virtualization.engine.chain.PluginManager.runGet(PluginManager.java:353)
at oracle.ods.virtualization.engine.chain.PluginManager.runGet(PluginManager.java:318)
at oracle.ods.virtualization.engine.chain.GlobalServicesInterface.runGet(GlobalServicesInterface.java:135)
at oracle.ods.virtualization.operation.SearchOperation.process(SearchOperation.java:203)
at oracle.ods.virtualization.operation.SearchOperation.process(SearchOperation.java:47)
at oracle.ods.virtualization.service.DefaultVirtualizationSession.processOperation(DefaultVirtualizationSession.java:384)
at oracle.ods.virtualization.service.DefaultVirtualizationSession.search(DefaultVirtualizationSession.java:173)
at oracle.ods.virtualization.service.DefaultVirtualizationSession.search(DefaultVirtualizationSession.java:161)
at oracle.ods.virtualization.service.DefaultVirtualizationSession.search(DefaultVirtualizationSession.java:154)
at oracle.security.idm.providers.libovd.util.LibOVDGrantedRelationSearchResponse.search(LibOVDGrantedRelationSearchResponse.java:282)
at oracle.security.idm.providers.libovd.util.LibOVDGrantedRelationSearchResponse.buildNextFilterAndSearch(LibOVDGrantedRelationSearchResponse.java:227)
at oracle.security.idm.providers.libovd.util.LibOVDGrantedRelationSearchResponse.(LibOVDGrantedRelationSearchResponse.java:130)
at oracle.security.idm.providers.libovd.util.LibOVDRealm.getOwnedRoles(LibOVDRealm.java:581)
at oracle.security.idm.providers.libovd.LibOVDRoleManager.getOwnedRoles(LibOVDRoleManager.java:298)
at oracle.tip.pc.services.identity.jps.JpsProvider.getOwnedRoles(JpsProvider.java:2314)
at oracle.tip.pc.services.identity.jps.IdentityImpl.getOwnedRoles(IdentityImpl.java:598)
at oracle.bpel.services.identity.wsif.IdentityServiceWSIF.getOwnedRolesByUser(IdentityServiceWSIF.java:962)
at oracle.bpel.services.identity.soap.IdentityServiceSOAP.getOwnedRolesByUser(IdentityServiceSOAP.java:1047)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at oracle.bpel.services.workflow.common.provider.WorkflowWSProvider.processMessage(WorkflowWSProvider.java:215)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:1319)
at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:1380)
at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessingPhaseTwo(ProviderProcessor.java:705)
at oracle.j2ee.ws.server.WebServiceProcessor.doRequestProcessing(WebServiceProcessor.java:693)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:251)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:215)
at oracle.j2ee.ws.server.WebServiceServlet.doService(WebServiceServlet.java:687)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:137)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:460)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:120)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:217)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:81)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at oracle.security.wls.filter.SSOSessionSynchronizationFilter.doFilter(SSOSessionSynchronizationFilter.java:194)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:220)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3436)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3402)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2285)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2201)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1572)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)



The above thread appears to be a result of a call from the worklistapp (in this thread which calls the identity service):

"[ACTIVE] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=10 tid=0x0000000007ccb800 nid=0x64a9 runnable [0x00007f4069622000]
  java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:152)
at java.net.SocketInputStream.read(SocketInputStream.java:122)
at HTTPClient.BufferedInputStream.fillBuff(BufferedInputStream.java:206)
at HTTPClient.BufferedInputStream.read(BufferedInputStream.java:126)
at HTTPClient.StreamDemultiplexor.read(StreamDemultiplexor.java:361)
- locked (a HTTPClient.StreamDemultiplexor)
at HTTPClient.RespInputStream.read(RespInputStream.java:151)
- locked (a HTTPClient.StreamDemultiplexor)
at HTTPClient.RespInputStream.read(RespInputStream.java:112)
at HTTPClient.Response.readResponseHeaders(Response.java:1169)
at HTTPClient.Response.getHeaders(Response.java:892)
- locked (a HTTPClient.StreamDemultiplexor)
at HTTPClient.Response.getStatusCode(Response.java:341)
at HTTPClient.RetryModule.responsePhase1Handler(RetryModule.java:94)
at HTTPClient.HTTPResponse.handleResponseImpl(HTTPResponse.java:872)
at HTTPClient.HTTPResponse.access$000(HTTPResponse.java:62)
at HTTPClient.HTTPResponse$2.run(HTTPResponse.java:839)
at HTTPClient.HTTPResponse$2.run(HTTPResponse.java:837)
at HTTPClient.HttpClientConfiguration.doAction(HttpClientConfiguration.java:1083)
at HTTPClient.HTTPResponse.handleResponse(HTTPResponse.java:837)
- locked (a HTTPClient.HTTPResponse)
at HTTPClient.HTTPResponse.getStatusCode(HTTPResponse.java:242)
at HTTPClient.HttpURLConnection.getResponseCode(HttpURLConnection.java:449)
at oracle.j2ee.ws.saaj.client.p2p.HttpSOAPConnection.processHttpResponseCode(HttpSOAPConnection.java:565)
at oracle.j2ee.ws.saaj.client.p2p.HttpSOAPConnection.post2(HttpSOAPConnection.java:504)
at oracle.j2ee.ws.saaj.client.p2p.HttpSOAPConnection$PrivilegedPost.run(HttpSOAPConnection.java:1331)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.j2ee.ws.saaj.client.p2p.HttpSOAPConnection.call2(HttpSOAPConnection.java:232)
at oracle.j2ee.ws.common.transport.HttpTransport.transmit(HttpTransport.java:75)
at oracle.j2ee.ws.common.async.MessageSender.call(MessageSender.java:58)
at oracle.j2ee.ws.common.async.Transmitter.transmitSync(Transmitter.java:105)
at oracle.j2ee.ws.common.async.Transmitter.transmit(Transmitter.java:60)
at oracle.j2ee.ws.common.async.RequestorImpl.transmit(RequestorImpl.java:258)
at oracle.j2ee.ws.common.async.RequestorImpl.invoke(RequestorImpl.java:93)
at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:1315)
at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:237)
at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:108)
at oracle.bpel.services.workflow.client.SOAPDispatcher.invokeDispatcher(SOAPDispatcher.java:257)
at oracle.bpel.services.workflow.client.SOAPDispatcher.dispatch(SOAPDispatcher.java:376)
at oracle.bpel.services.identity.client.IdentityServiceSOAPClient.invoke(IdentityServiceSOAPClient.java:212)
at oracle.bpel.services.identity.client.IdentityServiceSOAPClient.getOwnedRolesByUser(IdentityServiceSOAPClient.java:452)
at oracle.bpel.services.identity.client.AbstractIdentityServiceClient.getOwnedRolesByUser(AbstractIdentityServiceClient.java:1170)
at oracle.bpel.services.identity.client.User.getOwnedRoles(User.java:524)
at oracle.bpel.worklistapp.dc.idbrowser.beans.model.identity.ReassignmentIDSearcher.(ReassignmentIDSearcher.java:45)
at oracle.bpel.worklistapp.dc.idbrowser.beans.model.identity.IdentitySearcherFactory.createSearcher(IdentitySearcherFactory.java:54)
at oracle.bpel.worklistapp.dc.idbrowser.beans.model.identity.IdentitySearcherFactory.createSearcher(IdentitySearcherFactory.java:67)
at oracle.bpel.worklistapp.dc.idbrowser.beans.model.IdentityBrowserModel.configureSearcher(IdentityBrowserModel.java:401)
at oracle.bpel.worklistapp.dc.idbrowser.beans.view.IdentityBrowserView.getModel(IdentityBrowserView.java:656)
at oracle.bpel.worklistapp.dc.idbrowser.beans.view.IdentityBrowserView.initIdentityBrowser(IdentityBrowserView.java:338)
at oracle.bpel.worklistapp.dc.idbrowser.beans.view.IdentityBrowserView.initIdentityBrowser(IdentityBrowserView.java:292)
at oracle.bpel.worklistapp.dc.idbrowser.beans.view.IdentityBrowserView.reset(IdentityBrowserView.java:254)
at oracle.bpel.services.workflow.worklist.adf.InvokeActionBean.handleRedirectAction(InvokeActionBean.java:1590)
at oracle.bpel.services.workflow.worklist.adf.InvokeActionBean.invokeNewOperation(InvokeActionBean.java:530)
at oracle.bpel.services.workflow.worklist.adf.InvokeActionBean.action(InvokeActionBean.java:711)
at sun.reflect.GeneratedMethodAccessor5338.invoke(Unknown Source)



So it seems the worklistapp needs to query against the owner attribute for some actions.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms