I am on Spring boot 3.2.5 with virtual threads enabled and connecting to an external ActiveMQ broker using activeMQ client 5.18.4. I am using the jmsTemplate sendAndReceive() method to send a message on a request queue and get back the response from a response queue with a @JmsListener. Whenever I send a message, I get a thread pinning warning as follows:
2024-05-18 15:06:39.916 INFO 29496 --- [omcat-handler-5] c.b.i.m.impl.OFSActiveMQProducer : Producer: Sending message to queue Q.ENQ.IN.DEV with correlationID 85ea6e1a-56fd-4e94-b822-f5c44e363408 **Thread[#52,ForkJoinPool-1-worker-1,5,CarrierThreads] org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:2045) <== monitors:1** 2024-05-18 15:06:40.047 INFO 29496 --- [ntContainer#0-1] c.b.iraq.messaging.EnqActiveMQConsumer : Enq Consumer: Received message from queue Q.ENQ.OUT.DEV with Id: 85ea6e1a-56fd-4e94-b822-f5c44e363408 2024-05-18 15:06:40.253 INFO 29496 --- [omcat-handler-5] c.b.i.m.impl.OFSActiveMQProducer : Producer: Successfully received message from consumer for Q.ENQ.IN.DEV with ID: 85ea6e1a-56fd-4e94-b822-f5c44e363408
I checked the documentation, but I couldn’t find anything stating if activeMQ supports virtual threads or not. Can anyone please advise if there is a way to remedy the pinning, or if it’s okay to allow this pinning when sending a JMS message.