This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch fix/CAMEL-24128
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7b6811fd589ea8cf7f89e492547a71cbef0d10c9
Author: Claus Ibsen <[email protected]>
AuthorDate: Thu Jul 16 14:06:07 2026 +0200

    CAMEL-24128: camel-jpa - Fix EntityManager leak in JpaPollingConsumer
    
    Co-Authored-By: Claude Opus 4.6 <[email protected]>
    Signed-off-by: Claus Ibsen <[email protected]>
---
 .../java/org/apache/camel/component/jpa/JpaPollingConsumer.java     | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaPollingConsumer.java
 
b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaPollingConsumer.java
index 0564411a47c1..d0391956d87b 100644
--- 
a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaPollingConsumer.java
+++ 
b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaPollingConsumer.java
@@ -124,11 +124,11 @@ public class JpaPollingConsumer extends 
PollingConsumerSupport {
 
     @Override
     public Exchange receive() {
+        Exchange exchange = getEndpoint().createExchange();
+
         // resolve the entity manager before evaluating the expression
-        final EntityManager entityManager = getTargetEntityManager(null, 
entityManagerFactory,
+        final EntityManager entityManager = getTargetEntityManager(exchange, 
entityManagerFactory,
                 getEndpoint().isUsePassedInEntityManager(), 
getEndpoint().isSharedEntityManager(), true);
-
-        Exchange exchange = getEndpoint().createExchange();
         exchange.getIn().setHeader(JpaConstants.ENTITY_MANAGER, entityManager);
         transactionStrategy.executeInTransaction(new Runnable() {
             @Override

Reply via email to