Hello everyone, I have some updates on the JAVA virtual threads.
There is a team in my company. They try to use this feature with JAVA 21 + Spring Boot 3 and Oracle JDBC7+.
They had an issue about a deadlock, pod restart when testing performance.
By the way, Another team has used this feature with 'com.oracle.ojdbc7' version 12.1.0.2 (The lower version from the first team, as I mentioned.). This team hasn't found any issue with the pod restarting or got a deadlock on the Hiraki.
This service is now available in production.
Spec:
- Spring Boot 3.2.1
- JAVA 21
- Tested with JVM with 70 active threads & 1 hr.
CPU reduced by: 13.5%
Mem: not change
TPS increased by: 10.6%
About the issue. I understand that the deadlock problem occurs because there're so many pinning threads. This cause a shortage of platform threads, as the remaining ones are all pinned.
If the debug mode shows the pinning issues, I think it would be better to avoid using this feature.