KB Article #180371

Sentinel Installation or configuration database validation failing with “Connection error for user”

Problem

Problem]

Sentinel Installation or configuration gives the following:

“Connection error for user”

and

"java.sql.SQLRecoverableException: I/O Exception: Connection reset"

Note: A SQL client connection from Server to Database is positive.

The command “head -n 1 /dev/random” does not return output immediately. This is evidence that a problem exists as explained below.

A java class used by the jdbc driver ( java.security.SecureRandom) used the /dev/random special Linux file to generate pseudorandom numbers used at the user login time.


The /dev/random file is using system environmental noise collected from device drivers and other sources.
If this "environmental noise" is not enough (no activity on the server) or there are other hardware issues on the linux server,

the /dev/random file is blocking the jdbc driver, causing the "java.sql.SQLRecoverableException: I/O Exception: Connection reset" error.



Resolution

[Resolution]
The solution is to use another system file, /dev/urandom for the pseudorandom number generator mechanism.
The securerandom.source property should be changed in the following file :

jre>/lib/security/java.security

to this value:

securerandom.source=/dev/./urandom

Note that because of a JDK bug,

the '/./' characters should be added (it will not work with securerandom.source=[2]file:/dev/urandom).

https://ruleoftech.com/2016/avoiding-jvm-delays-caused-by-random-number-generation