We are currently running 7.2.1 on Tomcat7 and Java8. When our oracle RAC environment has maintenance we are seeing issues/errors in our logs (see below). A suggestion has been made that the Tomcat configuration "testOnBorrow" would help in this situation. I do not see any reference to this in the 7.2.1 Tomcat/Oracle installation guide. However, it is mentioned in the 7.4 installation guide as something that needs to be in place when using Tomcat7.
Is it Pega's recommendation to use this setting in all versions of Pega on Tomcat7?
Sorry, forgot the error message:
PegaRULES.log-2018-07-23-1532315284:DatabaseException caused by prior exception: java.sql.SQLRecoverableException: No more data to read from socket
PegaRULES.log-2018-07-23-1532315284:Problem #1, SQLState 08000, Error code 17410: java.sql.SQLRecoverableException: No more data to read from socket
PegaRULES.log-2018-07-23-1532315284:Caused by: java.sql.SQLRecoverableException: No more data to read from socket
Posted: 4 years ago
Posted: 23 Jul 2018 14:31 EDT
Rachit Agarwal (Rachit_Agarwal)
Principal Engineer, Technical Support
Thanks for the information. We are using: Database version: Oracle Database 12c Enterprise Edition Release 126.96.36.199.0 - 64bit Production
As an fyi, the issue only occurs when there is some type of patching on the Oracle farm; during those patching efforts one server in the RAC will go offline and the others continue to handle traffic. It appears that prpc is maintaining connections to the server that goes offline.
Posted: 4 years ago
Posted: 23 Jul 2018 15:38 EDT
Basavaraj Kadakol (BASAVARAJ)
Senior Manager, Technical Support - Runtime Engine and Search
testOnBorrow ensures that before the connection is provided to appliation from the connection pool, a basic sanity test is made to ensure that the connection is not stale.
Although it doesn't provide a cent percent gaurantee(say connection going down after sanity check and before being used by application), it still gives good amount of assurance.
In my opinion, it should be fine using this setting.