Hello,
I just want to draw your attention to the problem that is currently happening with usage of liquibase and commons-lang3:3.15+.
The problem is raised here [LANG-1748] RandomStringUtils.random() drains the systems entropy pool and blocks - ASF JIRA and when it happens, you get a thread that hangs because of the current implementation of liquibase and the last change in commons-lang3.
The solution is to revert to a version <3.15.0 for commons-lang3.
I hope this will help people here.
"main" #1 prio=5 os_prio=0 cpu=7046.69ms elapsed=886.05s tid=0x00007f4cbc027cc0 nid=0xf5 runnable [0x00007f4cc3f36000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(java.base@17.0.9/Native Method)
at java.io.FileInputStream.read(java.base@17.0.9/FileInputStream.java:276)
at java.io.FilterInputStream.read(java.base@17.0.9/FilterInputStream.java:132)
at sun.security.provider.NativePRNG$RandomIO.readFully(java.base@17.0.9/NativePRNG.java:425)
at sun.security.provider.NativePRNG$RandomIO.ensureBufferValid(java.base@17.0.9/NativePRNG.java:528)
at sun.security.provider.NativePRNG$RandomIO.implNextBytes(java.base@17.0.9/NativePRNG.java:547)
- locked <0x000000070a439aa0> (a java.lang.Object)
at sun.security.provider.NativePRNG$Blocking.engineNextBytes(java.base@17.0.9/NativePRNG.java:269)
at java.security.SecureRandom.nextBytes(java.base@17.0.9/SecureRandom.java:758)
at org.apache.commons.lang3.CachedRandomBits.<init>(CachedRandomBits.java:67)
at org.apache.commons.lang3.RandomStringUtils.random(RandomStringUtils.java:304)
at org.apache.commons.lang3.RandomStringUtils.next(RandomStringUtils.java:668)
at org.apache.commons.lang3.RandomStringUtils.random(RandomStringUtils.java:165)
at org.apache.commons.lang3.RandomStringUtils.next(RandomStringUtils.java:628)
at org.apache.commons.lang3.RandomStringUtils.random(RandomStringUtils.java:129)
at liquibase.util.StringUtil.randomIdentifier(StringUtil.java:771)
at liquibase.Scope.generateScopeId(Scope.java:155)
...