Question

DB_SWITCH_SESSION:Could not switch database proxy session to user [***] : IO Error: Socket closed IO Error: Socket closed

  • 4 February 2022
  • 5 replies
  • 159 views

Userlevel 3
Badge +6

ENV : app9

we can not login IFS

ERROR:

DB_SWITCH_SESSION:Could not switch database  proxy session to user [***] : IO Error: Socket closed

IO Error:  Socket closed

 

We found the logs saying:

<Feb 4, 2022 8:02:21 AM CST> <Error> <EJB> <IFSServer> <ManagedServer1> <[ACTIVE] ExecuteThread: '20' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <0211a82e-d218-418d-8132-00fa87c614c3-001ee7b6> <1643932941806> <BEA-010079> <An error occurred while attempting to receive a message from JMS for processing by a Message-Driven Bean: javax.jms.JMSException: [JMSPool:169812]The pooled JMS session is enlisted in another transaction and may not be used elsewhere.
The exception is : javax.jms.JMSException: [JMSPool:169812]The pooled JMS session is enlisted in another transaction and may not be used elsewhere.
    at weblogic.deployment.jms.JMSExceptions.getJMSException(JMSExceptions.java:22)

---------------------------

2022-02-04 08:15:31,488  24 ERROR [Database] ifs.fnd.sf.storage.FndStatement.close(): Unable to close statement ifs.fnd.sf.j2ee.container.weblogic.FndOracleStatementForWebLogic@78af29cd [Error GUID:efd458ce-4e11-4a9d-904d-8ea2a74dccf3]
java.sql.SQLRecoverableException: Closed Connection
    at oracle.jdbc.driver.OracleStatement.ensureOpen(OracleStatement.java:4477)
    at oracle.jdbc.driver.OracleStatement.getWarnings(OracleStatement.java:3414)
    at oracle.jdbc.driver.OracleStatementWrapper.getWarnings(OracleStatementWrapper.java:398)
    at ifs.fnd.sf.storage.FndStatement.close(FndStatement.java:837)
    at ifs.fnd.entities.fnduser.FndUserCache.queryGrantedActivityFilters(FndUserCache.java:375)
    at ifs.fnd.entities.fnduser.FndUserCache.getFiltersForActivity(FndUserCache.java:239)
    at ifs.fnd.entities.fnduser.FndUserCache.isActivityGranted(FndUserCache.java:207)
    at ifs.fnd.sf.storage.FndAbstractHandler.checkActivityGranted(FndAbstractHandler.java:326)
    at ifs.fnd.services.plsqlserver.service.PlsqlProxy.initFndContext(PlsqlProxy.java:277)
    at ifs.fnd.services.plsqlserver.service.PlsqlProxy.beforeCall(PlsqlProxy.java:175)
    at ifs.fnd.services.plsqlserver.service.PlsqlProxy.invoke(PlsqlProxy.java:139)
    at ifs.fnd.services.plsqlserver.service.PlsqlProxy.invoke(PlsqlProxy.java:105)
    at ifs.fnd.services.plsqlserver.service.PlsqlProxy.invoke(PlsqlProxy.java:88)
    at ifs.fnd.gateway.client.AccessPlsqlInvokeManager.doInvoke(AccessPlsqlInvokeManager.java:40)
    at ifs.fnd.gateway.client.IfsClientGateway.doPostImpl(IfsClientGateway.java:581)
    at ifs.fnd.gateway.IfsAbstractGateway.doPost(IfsAbstractGateway.java:453)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
    at ifs.fnd.gateway.IfsAbstractGateway.service(IfsAbstractGateway.java:161)
    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.ServletStubImpl.execute(ServletStubImpl.java:243)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3450)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3417)
    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:2280)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2196)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1632)
    at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:256)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)
2022-02-04 08:15:31,513 132 ERROR [Database] ifs.fnd.sf.storage.FndStandardStatement.reportSqlError(): ifs.fnd.sf.storage.FndStatement: SQL exception caught:
 Current database user:
    LIKONGYUE
 Error message:
    IO Error: Socket read timed out
 SQL statement:
     select distinct filter_id, granted_filter_type_db from IFSAPP.fnd_activity_grant_filter where activity_name = ?
 Bind parameters:
    ACTIVITY = AccessPlsql

 

--------------------

 


5 replies

Userlevel 5
Badge +7

Hi @michel 

This may helpful

DB_SWITCH_SESSION:Could not switch database proxy session to user [IFSAPP]: IO Error: Socket closed | IFS Community

Ref: 

  1. DB_SWITCH_SESSION:Could not switch database proxy session to user [username] | IFS Community
  2. DB_SWITCH_SESSION:Could not switch database proxy session to user [username] | IFS Community

    Thanks & Regards
    Shan
Userlevel 3
Badge +6

Thanks @Shan Peiris 

Yes, restarting IFS Services can solve the issue temporatily

can you locate the root cause and avoid happen again?

Userlevel 6
Badge +13

@michel , You can fix this issue by setting the “idle time” to "UNLIMITED" in ALL Oracle profiles. 

Userlevel 5
Badge +7

@michel 

Set “idle time” to "UNLIMITED" in all Oracle profiles. That may resolve the issue.

Thanks & Regards
Shan

Userlevel 3
Badge +6

Thanks all of you

I  will update the result for some days

 

BR

Michel 

Reply