Support Article
Agent thread stops working while reading from random device
SA-58368
Summary
Agents do not respond and the thread stops working while reading from a random device.
Error Messages
"Thread-5706 (HornetQ-client-global-threads-1488549175)" #22093 daemon prio=5 os_prio=0 tid=0x00007feb94115800 nid=0x5292 runnable [0x00007feb1cde3000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(FileInputStream.java:255)
at sun.security.provider.NativePRNG$RandomIO.readFully(NativePRNG.java:424)
at sun.security.provider.NativePRNG$RandomIO.implGenerateSeed(NativePRNG.java:441)
- locked <0x00000005c0490e60> (a java.lang.Object)
at sun.security.provider.NativePRNG$RandomIO.access$500(NativePRNG.java:331)
at sun.security.provider.NativePRNG.engineGenerateSeed(NativePRNG.java:226)
at java.security.SecureRandom.generateSeed(SecureRandom.java:533)
at com.pega.pegarules.session.internal.mgmt.base.RequestorIdGenerator$RequestorIdRandom.reseedGenerator(RequestorIdGenerator.java:102)
Steps to Reproduce
- Monitor agent execution using System Management Application (SMA).
- Collect a thread dump to inspect the thread status.
Root Cause
A defect or configuration issue in the operating environment.
Thread dumps confirmed that agent thread hung while reading from a random device. The status of the server’s entropy was verified when the following command was run:
# cat /proc/sys/kernel/random/entropy_avail
The value returned was lower than 200. That is, the /dev/random blocking device stopped supplying values due to lack of entropy.
Resolution
Make the following change to the operating environment:
When using either UNIX or LINUX environment, add '-Djava.security.egd=file:/dev/./urandom' to the Java options. For more information refer to: https://pdn.pega.com/documents/pega-731-platform-installation-guide-jboss-redhat-eap-and-oracle
Published July 23, 2018 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.