OIM WebLogic Domain Configuration Wizard Fails At 95% With java.sql.SQLRecoverableException: No more data to read from socket
(Doc ID 2847212.1)
Last updated on JUNE 06, 2023
Applies to:
JDBC - Version 19.3 and laterInformation in this document applies to any platform.
Symptoms
After upgrading the database to version 19.12, the domain configuration step for Oracle Identity Manager (OIM) with Weblogic 12.2.1.4 with JDBC 19.3 is getting stuck at 95%, and row contention on one of the OPSS tables is seen in the database.
OIM with the same configuration was working successfully with database version 19.7.
The following exception is reported in the log:
Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.6.7.v20190604-418f1a1c56): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: java.sql.SQLRecoverableException: No more data to read from socket
Error Code: 17410
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:331)
at org.eclipse.persistence.exceptions.DatabaseException.sqlException(DatabaseException.java:326)
at org.eclipse.persistence.sessions.DefaultConnector.connect(DefaultConnector.java:138)
at org.eclipse.persistence.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:162)
at org.eclipse.persistence.internal.databaseaccess.DatasourceAccessor.connectInternal(DatasourceAccessor.java:346)
at org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor.connectInternal(DatabaseAccessor.java:309)
at org.eclipse.persistence.internal.databaseaccess.DatasourceAccessor.connect(DatasourceAccessor.java:434)
at org.eclipse.persistence.sessions.server.ConnectionPool.buildConnection(ConnectionPool.java:217)
at org.eclipse.persistence.sessions.server.ConnectionPool.acquireConnection(ConnectionPool.java:136)
at org.eclipse.persistence.sessions.server.ServerSession.acquireClientConnection(ServerSession.java:249)
at org.eclipse.persistence.sessions.server.ClientSession.executeCall(ClientSession.java:280)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:260)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeCall(DatasourceCallQueryMechanism.java:246)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeSelectCall(DatasourceCallQueryMechanism.java:317)
at org.eclipse.persistence.internal.queries.DatasourceCallQueryMechanism.executeSelect(DatasourceCallQueryMechanism.java:299)
at org.eclipse.persistence.queries.DataReadQuery.executeNonCursor(DataReadQuery.java:197)
at org.eclipse.persistence.queries.DataReadQuery.executeDatabaseQuery(DataReadQuery.java:152)
at org.eclipse.persistence.queries.DatabaseQuery.execute(DatabaseQuery.java:911)
at org.eclipse.persistence.queries.DataReadQuery.execute(DataReadQuery.java:137)
at org.eclipse.persistence.queries.DatabaseQuery.executeInUnitOfWork(DatabaseQuery.java:810)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.internalExecuteQuery(UnitOfWorkImpl.java:2899)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1863)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1845)
at org.eclipse.persistence.internal.sessions.AbstractSession.executeQuery(AbstractSession.java:1810)
at org.eclipse.persistence.internal.jpa.QueryImpl.executeReadQuery(QueryImpl.java:258)
at org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:478)
at oracle.security.jps.internal.policystore.rdbms.JpsDBDataManager.lockEntityRow(JpsDBDataManager.java:2412)
at oracle.security.jps.internal.policystore.rdbms.JpsDBDataManager.getLock(JpsDBDataManager.java:2380)
at oracle.security.jps.internal.policystore.rdbms.JpsDBDataManager.beginTransactionInDoAs(JpsDBDataManager.java:2251)
at oracle.security.jps.internal.policystore.rdbms.JpsDBDataManager.beginTransaction(JpsDBDataManager.java:2238)
at oracle.security.jps.internal.policystore.ldap.PermissionManagerImpl.modifyPermission(PermissionManagerImpl.java:722)
at oracle.security.jps.internal.tools.utility.destination.apibased.JpsDstPolicy$ParallelPermissionMigrator.migrate(JpsDstPolicy.java:3524)
at oracle.security.jps.internal.tools.utility.destination.apibased.JpsDstPolicy$PermissionMigratorThread.run(JpsDstPolicy.java:3558)
Caused by: java.sql.SQLRecoverableException: No more data to read from socket
at oracle.jdbc.driver.T4CMAREngineNIO.prepareForUnmarshall(T4CMAREngineNIO.java:784)
at oracle.jdbc.driver.T4CMAREngineNIO.unmarshalUB1(T4CMAREngineNIO.java:429)
at oracle.jdbc.driver.T4C8TTIpro.receive(T4C8TTIpro.java:134)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1628)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:588)
at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:793)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:57)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:747)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:562)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:208)
at org.eclipse.persistence.sessions.DefaultConnector.connect(DefaultConnector.java:98)
... 30 more
STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Follow the steps in https://docs.oracle.com/en/middleware/fusion-middleware/12.2.1.4/inoam/installing-and-configuring-oracle-identity-management-software.html#GUID-B6B5E795-4B47-458E-B57E-616553240460
2. Get to the Domain Configuration Wizard.
The process gets stuck.
Changes
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Changes |
Cause |
Solution |
References |