Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.35.0
-
None
-
None
Description
When I was testing executing WildFly workloads on a virtual thread, turning on JVM thread pinning logging (see WFLY-19536) revealed pinning happening in client-side Artemis code (e.g. sending JMS messages). This issue is to trace working with the Artemis community to resolve these issues and get the fixed code into WildFly.
An example:
2024-07-18 04:55:23,274 INFO [stdout] (ForkJoinPool-1-worker-1) Thread[#297,ForkJoinPool-1-worker-1,5,CarrierThreads] 2024-07-18 04:55:23,275 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/java.lang.VirtualThread$VThreadContinuation.onPinned(VirtualThread.java:185) 2024-07-18 04:55:23,275 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/jdk.internal.vm.Continuation.onPinned0(Continuation.java:393) 2024-07-18 04:55:23,276 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/java.lang.VirtualThread.parkNanos(VirtualThread.java:631) 2024-07-18 04:55:23,276 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/java.lang.System$2.parkVirtualThread(System.java:2648) 2024-07-18 04:55:23,276 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/jdk.internal.misc.VirtualThreads.park(VirtualThreads.java:67) 2024-07-18 04:55:23,276 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:267) 2024-07-18 04:55:23,276 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:756) 2024-07-18 04:55:23,276 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1126) 2024-07-18 04:55:23,276 INFO [stdout] (ForkJoinPool-1-worker-1) java.base/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:276) 2024-07-18 04:55:23,277 INFO [stdout] (ForkJoinPool-1-worker-1) org.apache.activemq.artemis.client@2.35.0//org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl.waitForTopology(ClientSessionFactoryImpl.java:544) 2024-07-18 04:55:23,277 INFO [stdout] (ForkJoinPool-1-worker-1) org.apache.activemq.artemis.client@2.35.0//org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:773) 2024-07-18 04:55:23,277 INFO [stdout] (ForkJoinPool-1-worker-1) org.apache.activemq.artemis.client@2.35.0//org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.createConnectionInternal(ActiveMQConnectionFactory.java:913) <== monitors:1