ALERT: Some images may not load properly within the Knowledge Base Article. If you see a broken image, please right-click and select 'Open image in a new tab'. We apologize for this inconvenience.

Error occur when trying to update imr_snapshot status; java.sql.SQLRecoverableException: Closed Connection at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.jav

book

Article ID: 236832

calendar_today

Updated On:

Products

CA Identity Suite CA Identity Governance CA Identity Manager

Issue/Introduction

Hi,

We have Identity Manager 14.4CP1 and scheduled snapshot in it. The snapshot fails on updating status in imreport6. If we resubmit the same snapshot task it gets completed. Attached is the log from IDM server.

2022-03-02 07:09:12,062 ERROR [ims.jdbc.JDBCSchema] (Thread-214803) Unable to run test statement java.sql.SQLRecoverableException: No more data to read from socket
        at oracle.jdbc.driver.T4CMAREngineNIO.prepareForReading(T4CMAREngineNIO.java:119)
        at oracle.jdbc.driver.T4CMAREngineNIO.unmarshalUB1(T4CMAREngineNIO.java:534)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:485)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612)
        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:213)
        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:37)
        at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:733)
        at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:904)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1082)
        at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1737)
        at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1692)
        at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:300)
        at com.netegrity.llsdk6.imsimpl.jdbcmanagedobject.JDBCSchema.testConnection(JDBCSchema.java:683)
        at com.netegrity.ims.db.DBConnectionManager._aquireConnection(DBConnectionManager.java:195)
        at com.netegrity.ims.db.DBConnectionManager.acquireConnection(DBConnectionManager.java:179)
        at com.netegrity.ims.imrexport.object.RDBCollector.updateData(RDBCollector.java:443)
        at com.netegrity.ims.imrexport.object.IMRJobCollector.setReportStatus(IMRJobCollector.java:160)
        at com.netegrity.ims.imrexport.IMRExportController.export(IMRExportController.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:202)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:09:57,559 ERROR [ims.jdbc.JDBCSchema] (Thread-214803) Unable to run test statement java.sql.SQLRecoverableException: No more data to read from socket
        at oracle.jdbc.driver.T4CMAREngineNIO.prepareForReading(T4CMAREngineNIO.java:119)
        at oracle.jdbc.driver.T4CMAREngineNIO.unmarshalUB1(T4CMAREngineNIO.java:534)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:485)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612)
        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:213)
        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:37)
        at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:733)
        at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:904)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1082)
        at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1737)
        at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1692)
        at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:300)
        at com.netegrity.llsdk6.imsimpl.jdbcmanagedobject.JDBCSchema.testConnection(JDBCSchema.java:683)
        at com.netegrity.ims.db.DBConnectionManager._aquireConnection(DBConnectionManager.java:195)
        at com.netegrity.ims.db.DBConnectionManager.acquireConnection(DBConnectionManager.java:181)
        at com.netegrity.ims.imrexport.object.RDBCollector.updateData(RDBCollector.java:443)
        at com.netegrity.ims.imrexport.object.IMRJobCollector.setReportStatus(IMRJobCollector.java:160)
        at com.netegrity.ims.imrexport.IMRExportController.export(IMRExportController.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:202)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:10:08,726 ERROR [com.netegrity.ims.db.DBConn] (Thread-214803) Closed ConnectionUPDATE imreport6 SET imr_snapshotstatus='Completed'WHERE imr_reportid=143 java.sql.SQLRecoverableException: Closed Connection
        at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.java:1499)
        at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.java:1478)
        at com.netegrity.ims.db.DBConn.executeDDL(DBConn.java:139)
        at com.netegrity.ims.imrexport.object.RDBCollector.updateData(RDBCollector.java:453)
       at com.netegrity.ims.imrexport.object.IMRJobCollector.setReportStatus(IMRJobCollector.java:160)
        at com.netegrity.ims.imrexport.IMRExportController.export(IMRExportController.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:202)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:10:08,727 ERROR [com.netegrity.ims.imrexport.IMRExportController] (Thread-214803) Error occur when trying to update imr_snapshotstatus to Completed on table imreport6 java.lang.Exception: Error occur when trying to update imr_snapshotstatus to Completed on table imreport6
        at com.netegrity.ims.imrexport.object.IMRJobCollector.setReportStatus(IMRJobCollector.java:164)
        at com.netegrity.ims.imrexport.IMRExportController.export(IMRExportController.java:93)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:202)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:10:08,729 ERROR [ims.jdbc.JDBCSchema] (Thread-214803) Unable to get vendor code java.sql.SQLRecoverableException: Closed Connection
        at oracle.jdbc.driver.PhysicalConnection.getMetaData(PhysicalConnection.java:2408)
        at com.netegrity.llsdk6.imsimpl.jdbcmanagedobject.JDBCSchema.getVendorCode(JDBCSchema.java:643)
        at com.netegrity.llsdk6.imsimpl.jdbcmanagedobject.JDBCSchema.testConnection(JDBCSchema.java:663)
        at com.netegrity.ims.db.DBConnectionManager._aquireConnection(DBConnectionManager.java:195)
        at com.netegrity.ims.db.DBConnectionManager.acquireConnection(DBConnectionManager.java:179)
        at com.netegrity.ims.imrexport.object.RDBCollector.updateData(RDBCollector.java:443)
        at com.netegrity.ims.imrexport.object.IMRJobCollector.setReportStatus(IMRJobCollector.java:160)
        at com.netegrity.ims.imrexport.IMRExportController.export(IMRExportController.java:145)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:202)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:10:11,839 ERROR [ims.jdbc.JDBCSchema] (Thread-214803) Unable to get vendor code java.sql.SQLRecoverableException: Closed Connection
        at oracle.jdbc.driver.PhysicalConnection.getMetaData(PhysicalConnection.java:2408)
        at com.netegrity.llsdk6.imsimpl.jdbcmanagedobject.JDBCSchema.getVendorCode(JDBCSchema.java:643)
        at com.netegrity.llsdk6.imsimpl.jdbcmanagedobject.JDBCSchema.testConnection(JDBCSchema.java:663)
        at com.netegrity.ims.db.DBConnectionManager._aquireConnection(DBConnectionManager.java:195)
        at com.netegrity.ims.db.DBConnectionManager.acquireConnection(DBConnectionManager.java:181)
        at com.netegrity.ims.imrexport.object.RDBCollector.updateData(RDBCollector.java:443)
        at com.netegrity.ims.imrexport.object.IMRJobCollector.setReportStatus(IMRJobCollector.java:160)
        at com.netegrity.ims.imrexport.IMRExportController.export(IMRExportController.java:145)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:202)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:10:13,032 ERROR [com.netegrity.ims.db.DBConn] (Thread-214803) Closed ConnectionUPDATE imreport6 SET imr_snapshotstatus='Failed'WHERE imr_reportid=143 java.sql.SQLRecoverableException: Closed Connection
        at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.java:1499)
        at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.java:1478)
        at com.netegrity.ims.db.DBConn.executeDDL(DBConn.java:139)
        at com.netegrity.ims.imrexport.object.RDBCollector.updateData(RDBCollector.java:453)
        at com.netegrity.ims.imrexport.object.IMRJobCollector.setReportStatus(IMRJobCollector.java:160)
        at com.netegrity.ims.imrexport.IMRExportController.export(IMRExportController.java:145)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:202)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:10:13,033 ERROR [com.netegrity.ims.imrexport.IMRExportController] (Thread-214803) Error occur when trying to update imr_snapshotstatus to Failed on table imreport6
2022-03-02 07:10:13,033 ERROR [com.netegrity.ims.imrexport.IMRExportController] (Thread-214803) Got an exception during extraction progress. Stopping IMRExport.
2022-03-02 07:10:13,033 ERROR [com.netegrity.ims.exception.EventExecuteStateException] (Thread-214803) Exception: java.lang.Exception: CaptureSnapshot event has failed
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.invokeIMRExport(CaptureSnapshotEvent.java:206)
        at com.ca.identitymanager.reports.imapi.CaptureSnapshotEvent.longRunningEventExecute(CaptureSnapshotEvent.java:175)
        at com.netegrity.ims.AbstractLongRunningEvent$RunningEvent.run(AbstractLongRunningEvent.java:322)
        at java.lang.Thread.run(Thread.java:748)

2022-03-02 07:10:13,033 ERROR [com.netegrity.ims.exception.EventExecuteStateException] (Thread-214803) Execution of event: CaptureSnapshotEvent failed.  Exception encountered: Exception:CaptureSnapshot event has failed
2022-03-02 07:10:13,033 ERROR [ims.tmt.events] (Thread-214803) Failed to execute CaptureSnapshotEvent.
ERROR MESSAGE:
Exception:CaptureSnapshot event has failed

 

Cause

  • The exception is raised by the JDBC driver to indicate that something outside of JBoss terminated the connection to the database server.
    • This termination originated externally (e.g. due to network or database server initiated activity), not from within JBoss.
  • The error might be likely to occur in the following cases
    • A connection sits unused in the EAP (idle) pool for a period of time and fault tolerance/validation is not enabled.
    • A connection is taken from the pool by an application component and left idle for a period of time due to the way in which the application logic is factored.
    • A performance problem or blocking slows the work of a thread holding a connection and the connection remains idle for a period of time.
    • A long running SQL command fails to receive a response from the database server for an extended period of time.

Resolution

Please see this tech doc from the RedHat/JBoss site regarding the error you are getting. If you do not have access to the RH Support site please contact your Database Administrator for further assistance.

(Note: requires RedHat login account )

https://access.redhat.com/solutions/2156671

"The connection is closed" / "Closed Connection" exception raised by JDBC driver deployed in JBoss EAP

Issue

  • JDBC driver raises an exception like the below, indicating connection closure:

    Microsoft SQL Server

    ... com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.    ...    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:...)    at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:...)    at com.microsoft.sqlserver.jdbc.SQLServerStatement.checkClosed(SQLServerStatement.java:...)
    ... com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:...)    at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:...)    at com.microsoft.sqlserver.jdbc.SQLServerConnection.prepareStatement(SQLServerConnection.java:...)

    Oracle

    ... java.sql.SQLRecoverableException: Closed Connection    at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.java:3423)    ...
    ... java.sql.SQLRecoverableException: Closed Connection    at oracle.jdbc.driver.PhysicalConnection.setAutoCommit(PhysicalConnection.java:2232)    ...
    ...  java.sql.SQLException: Closed Connection    ...    at oracle.jdbc.driver.PhysicalConnection.prepareStatement(PhysicalConnection.java:868)