search cancel

DB Connection Exception: IO Error: Got minus one from a read call

book

Article ID: 254445

calendar_today

Updated On:

Products

CA Workload Automation DE

Issue/Introduction

CA Workload Automation DSeries is experiencing intermittent connection problems with our database. The trace log shows the following: 

20221112 13:18:43.653 [relationaldatabase] [ERROR] DM: [2022-11-12_13:18:43.653] Exception: IO Error: Got minus one from a read call
java.sql.SQLRecoverableException: IO Error: Got minus one from a read call
        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:854) ~[ojdbc8.jar:19.3.0.0.0]

 

Environment

Release : 12.3

Cause

The "Got minus one from a read call" message points to the problem being related to max-sessions/session settings on the app and database servers.

 

Resolution

Restarting the application and database servers may resolve this problem. However, it is recommended to review the suggestions below to ensure this does not occur at a later point in time. 

 

DSeries/Application Server

From the application server perspective, these are the relevant configuration settings: 

  • database.maxconnections.in.pool
  • database.connection.idle.flush.threshold

 

You can find the current value of these settings in the beginning lines of the tracelog. If you need to adjust either of these settings you can do so using: 

  • cd /apps/cawade/bin
  • ./setdbparm.bat database.maxconnections.in.pool

or

  • cd /apps/cawade/bin
  • ./setdbparm.bat database.connection.idle.flush.threshold

 

Important:
Please review the Idle Connections section in Database Requirements page. It offers a database.connection.idle.flush.threshold recommendation/consideration. 

 

Database Server

From a database perspective, please work with your DBA to determine max-session settings, current session connections, interruptions, errors and whether or not there are any other influencing factors like (such as Process limits, operating system configuration/limits, etc..).