You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2017/04/26 17:13:31 UTC

[1/6] camel git commit: Changed log level on entity manager refresh

Repository: camel
Updated Branches:
  refs/heads/camel-2.17.x 82bf20aef -> a8fe438c8
  refs/heads/camel-2.18.x 40da97091 -> 6b10852da
  refs/heads/master 667c38992 -> ba14e8366


Changed log level on entity manager refresh


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/ba14e836
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/ba14e836
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/ba14e836

Branch: refs/heads/master
Commit: ba14e8366e951355c0c0e4aefa404ff83892c09d
Parents: 66346a9
Author: James Thomas <ji...@gmail.com>
Authored: Wed Apr 26 08:13:36 2017 -0500
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Apr 26 19:06:20 2017 +0200

----------------------------------------------------------------------
 .../src/main/java/org/apache/camel/component/jpa/JpaConsumer.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/ba14e836/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
index fd9cf3d..a426077 100644
--- a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
+++ b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
@@ -154,7 +154,7 @@ public class JpaConsumer extends ScheduledBatchPollingConsumer {
         } catch (Exception e) {
             // Potentially EntityManager could be in an inconsistent state after transaction rollback,
             // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
-            LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
+            LOG.debug("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
             entityManager.close();
             entityManager = null;
             throw new PersistenceException(e);


[4/6] camel git commit: Changed log level on entity manager refresh

Posted by da...@apache.org.
Changed log level on entity manager refresh


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/6b10852d
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/6b10852d
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/6b10852d

Branch: refs/heads/camel-2.18.x
Commit: 6b10852da2ca3512ef4e6cff1f530945a979b874
Parents: 62988ca
Author: James Thomas <ji...@gmail.com>
Authored: Wed Apr 26 08:13:36 2017 -0500
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Apr 26 19:08:29 2017 +0200

----------------------------------------------------------------------
 .../src/main/java/org/apache/camel/component/jpa/JpaConsumer.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/6b10852d/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
index 100b9bb..cf183d9 100644
--- a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
+++ b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
@@ -154,7 +154,7 @@ public class JpaConsumer extends ScheduledBatchPollingConsumer {
         } catch (Exception e) {
             // Potentially EntityManager could be in an inconsistent state after transaction rollback,
             // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
-            LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
+            LOG.debug("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
             entityManager.close();
             entityManager = null;
             throw new PersistenceException(e);


[3/6] camel git commit: Refresh entity manager on PersistenceException

Posted by da...@apache.org.
Refresh entity manager on PersistenceException

The entity manager needs to be refreshed on all PersistenceExceptions
to ensure connections are being taken/returned from a connection pooled
data source.  This is especially important in cases where connection to
the database is temporarily broken.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/62988ca4
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/62988ca4
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/62988ca4

Branch: refs/heads/camel-2.18.x
Commit: 62988ca426992bd72e8b94aea7274aaf5d152bda
Parents: 40da970
Author: James Thomas <ji...@gmail.com>
Authored: Tue Apr 25 06:23:55 2017 -0500
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Apr 26 19:08:22 2017 +0200

----------------------------------------------------------------------
 .../apache/camel/component/jpa/JpaConsumer.java | 102 ++++++++++---------
 1 file changed, 53 insertions(+), 49 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/62988ca4/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
index f85d650..100b9bb 100644
--- a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
+++ b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
@@ -97,64 +97,68 @@ public class JpaConsumer extends ScheduledBatchPollingConsumer {
             LOG.trace("Recreated EntityManager {} on {}", entityManager, this);
         }
 
-        Object messagePolled = transactionTemplate.execute(new TransactionCallback<Object>() {
-            public Object doInTransaction(TransactionStatus status) {
-                if (getEndpoint().isJoinTransaction()) {
-                    entityManager.joinTransaction();
-                }
+        Object messagePolled = null;
+        try {
+            messagePolled = transactionTemplate.execute(new TransactionCallback<Object>() {
+                public Object doInTransaction(TransactionStatus status) {
+                    if (getEndpoint().isJoinTransaction()) {
+                        entityManager.joinTransaction();
+                    }
 
-                Queue<DataHolder> answer = new LinkedList<DataHolder>();
+                    Queue<DataHolder> answer = new LinkedList<DataHolder>();
 
-                Query query = getQueryFactory().createQuery(entityManager);
-                configureParameters(query);
-                LOG.trace("Created query {}", query);
+                    Query query = getQueryFactory().createQuery(entityManager);
+                    configureParameters(query);
+                    LOG.trace("Created query {}", query);
 
-                List<?> results = query.getResultList();
-                LOG.trace("Got result list from query {}", results);
+                    List<?> results = query.getResultList();
+                    LOG.trace("Got result list from query {}", results);
 
-                for (Object result : results) {
-                    DataHolder holder = new DataHolder();
-                    holder.manager = entityManager;
-                    holder.result = result;
-                    holder.exchange = createExchange(result, entityManager);
-                    answer.add(holder);
-                }
+                    for (Object result : results) {
+                        DataHolder holder = new DataHolder();
+                        holder.manager = entityManager;
+                        holder.result = result;
+                        holder.exchange = createExchange(result, entityManager);
+                        answer.add(holder);
+                    }
 
-                PersistenceException cause = null;
-                int messagePolled = 0;
-                try {
-                    messagePolled = processBatch(CastUtils.cast(answer));
-                } catch (Exception e) {
-                    if (e instanceof PersistenceException) {
-                        cause = (PersistenceException) e;
-                    } else {
-                        cause = new PersistenceException(e);
+                    PersistenceException cause = null;
+                    int messagePolled = 0;
+                    try {
+                        messagePolled = processBatch(CastUtils.cast(answer));
+                    } catch (Exception e) {
+                        if (e instanceof PersistenceException) {
+                            cause = (PersistenceException) e;
+                        } else {
+                            cause = new PersistenceException(e);
+                        }
                     }
-                }
 
-                if (cause != null) {
-                    if (!isTransacted()) {
-                        LOG.warn("Error processing last message due: {}. Will commit all previous successful processed message, and ignore this last failure.", cause.getMessage(), cause);
-                    } else {
-                        // Potentially EntityManager could be in an inconsistent state after transaction rollback,
-                        // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
-                        LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
-                        entityManager.close();
-                        entityManager = null;
-                        
-                        // rollback all by throwning exception
-                        throw cause;
+                    if (cause != null) {
+                        if (!isTransacted()) {
+                            LOG.warn("Error processing last message due: {}. Will commit all previous successful processed message, and ignore this last failure.", cause.getMessage(), cause);
+                        } else {
+                            // rollback all by throwning exception
+                            throw cause;
+                        }
                     }
-                }
 
-                // commit
-                LOG.debug("Flushing EntityManager");
-                entityManager.flush();
-                // must clear after flush
-                entityManager.clear();
-                return messagePolled;
-            }
-        });
+                    // commit
+                    LOG.debug("Flushing EntityManager");
+                    entityManager.flush();
+                    // must clear after flush
+                    entityManager.clear();
+                    return messagePolled;
+                }
+            });
+        } catch (Exception e) {
+            // Potentially EntityManager could be in an inconsistent state after transaction rollback,
+            // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
+            LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
+            entityManager.close();
+            entityManager = null;
+            throw new PersistenceException(e);
+        }
 
         return getEndpoint().getCamelContext().getTypeConverter().convertTo(int.class, messagePolled);
     }


[2/6] camel git commit: Refresh entity manager on PersistenceException

Posted by da...@apache.org.
Refresh entity manager on PersistenceException

The entity manager needs to be refreshed on all PersistenceExceptions
to ensure connections are being taken/returned from a connection pooled
data source.  This is especially important in cases where connection to
the database is temporarily broken.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/66346a98
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/66346a98
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/66346a98

Branch: refs/heads/master
Commit: 66346a98efd2d2ad51518833ecf3f131079e1936
Parents: 667c389
Author: James Thomas <ji...@gmail.com>
Authored: Tue Apr 25 06:23:55 2017 -0500
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Apr 26 19:06:20 2017 +0200

----------------------------------------------------------------------
 .../apache/camel/component/jpa/JpaConsumer.java | 102 ++++++++++---------
 1 file changed, 53 insertions(+), 49 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/66346a98/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
index 24b5b21..fd9cf3d 100644
--- a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
+++ b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
@@ -97,64 +97,68 @@ public class JpaConsumer extends ScheduledBatchPollingConsumer {
             LOG.trace("Recreated EntityManager {} on {}", entityManager, this);
         }
 
-        Object messagePolled = transactionTemplate.execute(new TransactionCallback<Object>() {
-            public Object doInTransaction(TransactionStatus status) {
-                if (getEndpoint().isJoinTransaction()) {
-                    entityManager.joinTransaction();
-                }
+        Object messagePolled = null;
+        try {
+            messagePolled = transactionTemplate.execute(new TransactionCallback<Object>() {
+                public Object doInTransaction(TransactionStatus status) {
+                    if (getEndpoint().isJoinTransaction()) {
+                        entityManager.joinTransaction();
+                    }
 
-                Queue<DataHolder> answer = new LinkedList<DataHolder>();
+                    Queue<DataHolder> answer = new LinkedList<DataHolder>();
 
-                Query query = getQueryFactory().createQuery(entityManager);
-                configureParameters(query);
-                LOG.trace("Created query {}", query);
+                    Query query = getQueryFactory().createQuery(entityManager);
+                    configureParameters(query);
+                    LOG.trace("Created query {}", query);
 
-                List<?> results = query.getResultList();
-                LOG.trace("Got result list from query {}", results);
+                    List<?> results = query.getResultList();
+                    LOG.trace("Got result list from query {}", results);
 
-                for (Object result : results) {
-                    DataHolder holder = new DataHolder();
-                    holder.manager = entityManager;
-                    holder.result = result;
-                    holder.exchange = createExchange(result, entityManager);
-                    answer.add(holder);
-                }
+                    for (Object result : results) {
+                        DataHolder holder = new DataHolder();
+                        holder.manager = entityManager;
+                        holder.result = result;
+                        holder.exchange = createExchange(result, entityManager);
+                        answer.add(holder);
+                    }
 
-                PersistenceException cause = null;
-                int messagePolled = 0;
-                try {
-                    messagePolled = processBatch(CastUtils.cast(answer));
-                } catch (Exception e) {
-                    if (e instanceof PersistenceException) {
-                        cause = (PersistenceException) e;
-                    } else {
-                        cause = new PersistenceException(e);
+                    PersistenceException cause = null;
+                    int messagePolled = 0;
+                    try {
+                        messagePolled = processBatch(CastUtils.cast(answer));
+                    } catch (Exception e) {
+                        if (e instanceof PersistenceException) {
+                            cause = (PersistenceException) e;
+                        } else {
+                            cause = new PersistenceException(e);
+                        }
                     }
-                }
 
-                if (cause != null) {
-                    if (!isTransacted()) {
-                        LOG.warn("Error processing last message due: {}. Will commit all previous successful processed message, and ignore this last failure.", cause.getMessage(), cause);
-                    } else {
-                        // Potentially EntityManager could be in an inconsistent state after transaction rollback,
-                        // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
-                        LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
-                        entityManager.close();
-                        entityManager = null;
-                        
-                        // rollback all by throwning exception
-                        throw cause;
+                    if (cause != null) {
+                        if (!isTransacted()) {
+                            LOG.warn("Error processing last message due: {}. Will commit all previous successful processed message, and ignore this last failure.", cause.getMessage(), cause);
+                        } else {
+                            // rollback all by throwning exception
+                            throw cause;
+                        }
                     }
-                }
 
-                // commit
-                LOG.debug("Flushing EntityManager");
-                entityManager.flush();
-                // must clear after flush
-                entityManager.clear();
-                return messagePolled;
-            }
-        });
+                    // commit
+                    LOG.debug("Flushing EntityManager");
+                    entityManager.flush();
+                    // must clear after flush
+                    entityManager.clear();
+                    return messagePolled;
+                }
+            });
+        } catch (Exception e) {
+            // Potentially EntityManager could be in an inconsistent state after transaction rollback,
+            // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
+            LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
+            entityManager.close();
+            entityManager = null;
+            throw new PersistenceException(e);
+        }
 
         return getEndpoint().getCamelContext().getTypeConverter().convertTo(int.class, messagePolled);
     }


[5/6] camel git commit: Refresh entity manager on PersistenceException

Posted by da...@apache.org.
Refresh entity manager on PersistenceException

The entity manager needs to be refreshed on all PersistenceExceptions
to ensure connections are being taken/returned from a connection pooled
data source.  This is especially important in cases where connection to
the database is temporarily broken.


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/6514a554
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/6514a554
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/6514a554

Branch: refs/heads/camel-2.17.x
Commit: 6514a5548c92d3a7d05c4f940390de57bb942005
Parents: 82bf20a
Author: James Thomas <ji...@gmail.com>
Authored: Tue Apr 25 06:23:55 2017 -0500
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Apr 26 19:10:48 2017 +0200

----------------------------------------------------------------------
 .../apache/camel/component/jpa/JpaConsumer.java | 102 ++++++++++---------
 1 file changed, 53 insertions(+), 49 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/6514a554/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
index 1e295e2..2fc750a 100644
--- a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
+++ b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
@@ -97,64 +97,68 @@ public class JpaConsumer extends ScheduledBatchPollingConsumer {
             LOG.trace("Recreated EntityManager {} on {}", entityManager, this);
         }
 
-        Object messagePolled = transactionTemplate.execute(new TransactionCallback<Object>() {
-            public Object doInTransaction(TransactionStatus status) {
-                if (getEndpoint().isJoinTransaction()) {
-                    entityManager.joinTransaction();
-                }
+        Object messagePolled = null;
+        try {
+            messagePolled = transactionTemplate.execute(new TransactionCallback<Object>() {
+                public Object doInTransaction(TransactionStatus status) {
+                    if (getEndpoint().isJoinTransaction()) {
+                        entityManager.joinTransaction();
+                    }
 
-                Queue<DataHolder> answer = new LinkedList<DataHolder>();
+                    Queue<DataHolder> answer = new LinkedList<DataHolder>();
 
-                Query query = getQueryFactory().createQuery(entityManager);
-                configureParameters(query);
-                LOG.trace("Created query {}", query);
+                    Query query = getQueryFactory().createQuery(entityManager);
+                    configureParameters(query);
+                    LOG.trace("Created query {}", query);
 
-                List<?> results = query.getResultList();
-                LOG.trace("Got result list from query {}", results);
+                    List<?> results = query.getResultList();
+                    LOG.trace("Got result list from query {}", results);
 
-                for (Object result : results) {
-                    DataHolder holder = new DataHolder();
-                    holder.manager = entityManager;
-                    holder.result = result;
-                    holder.exchange = createExchange(result, entityManager);
-                    answer.add(holder);
-                }
+                    for (Object result : results) {
+                        DataHolder holder = new DataHolder();
+                        holder.manager = entityManager;
+                        holder.result = result;
+                        holder.exchange = createExchange(result, entityManager);
+                        answer.add(holder);
+                    }
 
-                PersistenceException cause = null;
-                int messagePolled = 0;
-                try {
-                    messagePolled = processBatch(CastUtils.cast(answer));
-                } catch (Exception e) {
-                    if (e instanceof PersistenceException) {
-                        cause = (PersistenceException) e;
-                    } else {
-                        cause = new PersistenceException(e);
+                    PersistenceException cause = null;
+                    int messagePolled = 0;
+                    try {
+                        messagePolled = processBatch(CastUtils.cast(answer));
+                    } catch (Exception e) {
+                        if (e instanceof PersistenceException) {
+                            cause = (PersistenceException) e;
+                        } else {
+                            cause = new PersistenceException(e);
+                        }
                     }
-                }
 
-                if (cause != null) {
-                    if (!isTransacted()) {
-                        LOG.warn("Error processing last message due: {}. Will commit all previous successful processed message, and ignore this last failure.", cause.getMessage(), cause);
-                    } else {
-                        // Potentially EntityManager could be in an inconsistent state after transaction rollback,
-                        // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
-                        LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
-                        entityManager.close();
-                        entityManager = null;
-                        
-                        // rollback all by throwning exception
-                        throw cause;
+                    if (cause != null) {
+                        if (!isTransacted()) {
+                            LOG.warn("Error processing last message due: {}. Will commit all previous successful processed message, and ignore this last failure.", cause.getMessage(), cause);
+                        } else {
+                            // rollback all by throwning exception
+                            throw cause;
+                        }
                     }
-                }
 
-                // commit
-                LOG.debug("Flushing EntityManager");
-                entityManager.flush();
-                // must clear after flush
-                entityManager.clear();
-                return messagePolled;
-            }
-        });
+                    // commit
+                    LOG.debug("Flushing EntityManager");
+                    entityManager.flush();
+                    // must clear after flush
+                    entityManager.clear();
+                    return messagePolled;
+                }
+            });
+        } catch (Exception e) {
+            // Potentially EntityManager could be in an inconsistent state after transaction rollback,
+            // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
+            LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
+            entityManager.close();
+            entityManager = null;
+            throw new PersistenceException(e);
+        }
 
         return getEndpoint().getCamelContext().getTypeConverter().convertTo(int.class, messagePolled);
     }


[6/6] camel git commit: Changed log level on entity manager refresh

Posted by da...@apache.org.
Changed log level on entity manager refresh


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a8fe438c
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a8fe438c
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a8fe438c

Branch: refs/heads/camel-2.17.x
Commit: a8fe438c80c98a85a49b1477d45f1950ddac3eba
Parents: 6514a55
Author: James Thomas <ji...@gmail.com>
Authored: Wed Apr 26 08:13:36 2017 -0500
Committer: Claus Ibsen <da...@apache.org>
Committed: Wed Apr 26 19:10:55 2017 +0200

----------------------------------------------------------------------
 .../src/main/java/org/apache/camel/component/jpa/JpaConsumer.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/a8fe438c/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
index 2fc750a..038ad73 100644
--- a/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
+++ b/components/camel-jpa/src/main/java/org/apache/camel/component/jpa/JpaConsumer.java
@@ -154,7 +154,7 @@ public class JpaConsumer extends ScheduledBatchPollingConsumer {
         } catch (Exception e) {
             // Potentially EntityManager could be in an inconsistent state after transaction rollback,
             // so disposing it to have it recreated in next poll. cf. Java Persistence API 3.3.2 Transaction Rollback
-            LOG.info("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
+            LOG.debug("Disposing EntityManager {} on {} due to coming transaction rollback", entityManager, this);
             entityManager.close();
             entityManager = null;
             throw new PersistenceException(e);