Visarut Sae-Pueng
1 min readJun 14, 2024

--

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.

--

--

No responses yet