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

orpiske pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/master by this push:
     new d3cc93f  Avoid catching Throwable because it could also catch Java 
Errors that shouldn't be handled (#4958)
d3cc93f is described below

commit d3cc93f0942e16876970c2ad7e3845e723eeac0f
Author: Otavio Rodolfo Piske <orpi...@users.noreply.github.com>
AuthorDate: Fri Jan 29 13:02:36 2021 +0100

    Avoid catching Throwable because it could also catch Java Errors that 
shouldn't be handled (#4958)
    
    Includes: camel-kafka, camel-zookeeper-master, camel-xmlsecurity, 
camel-tracing, camel-timer,
    camel-stomp, camel-netty, camel-nats
---
 .../main/java/org/apache/camel/component/kafka/KafkaConsumer.java | 2 +-
 .../main/java/org/apache/camel/component/kafka/KafkaEndpoint.java | 2 +-
 .../main/java/org/apache/camel/component/nats/NatsConsumer.java   | 2 +-
 .../camel/component/netty/NettyConsumerExceptionHandler.java      | 2 +-
 .../main/java/org/apache/camel/component/netty/NettyProducer.java | 2 +-
 .../main/java/org/apache/camel/component/stomp/StompConsumer.java | 2 +-
 .../main/java/org/apache/camel/component/timer/TimerConsumer.java | 2 +-
 .../src/main/java/org/apache/camel/tracing/Tracer.java            | 8 ++++----
 .../camel/component/xmlsecurity/processor/SantuarioUtil.java      | 4 ++--
 .../component/xmlsecurity/processor/XmlSignatureProcessor.java    | 2 +-
 .../camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java       | 4 ++--
 .../group/internal/ManagedGroupFactoryBuilder.java                | 2 +-
 12 files changed, 17 insertions(+), 17 deletions(-)

diff --git 
a/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaConsumer.java
 
b/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaConsumer.java
index 86064a0..eae650e 100644
--- 
a/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaConsumer.java
+++ 
b/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaConsumer.java
@@ -199,7 +199,7 @@ public class KafkaConsumer extends DefaultConsumer {
                         // consumer
                         doInit();
                     }
-                } catch (Throwable e) {
+                } catch (Exception e) {
                     // ensure this is logged so users can see the problem
                     LOG.warn("Error creating 
org.apache.kafka.clients.consumer.KafkaConsumer due {}", e.getMessage(), e);
                 }
diff --git 
a/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaEndpoint.java
 
b/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaEndpoint.java
index 3495c0c..2ffc47e 100644
--- 
a/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaEndpoint.java
+++ 
b/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaEndpoint.java
@@ -127,7 +127,7 @@ public class KafkaEndpoint extends DefaultEndpoint 
implements MultipleConsumersS
                 replaceWithClass(props, 
ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, resolver, Deserializer.class);
                 replaceWithClass(props, 
ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, resolver, Deserializer.class);
             }
-        } catch (Throwable t) {
+        } catch (Exception t) {
             // can ignore and Kafka itself might be able to handle it, if not,
             // it will throw an exception
             LOG.debug("Problem loading classes for Serializers", t);
diff --git 
a/components/camel-nats/src/main/java/org/apache/camel/component/nats/NatsConsumer.java
 
b/components/camel-nats/src/main/java/org/apache/camel/component/nats/NatsConsumer.java
index a1d9d65..11b15d7 100644
--- 
a/components/camel-nats/src/main/java/org/apache/camel/component/nats/NatsConsumer.java
+++ 
b/components/camel-nats/src/main/java/org/apache/camel/component/nats/NatsConsumer.java
@@ -142,7 +142,7 @@ public class NatsConsumer extends DefaultConsumer {
                         setActive(true);
                     }
                 }
-            } catch (Throwable e) {
+            } catch (Exception e) {
                 getExceptionHandler().handleException("Error during 
processing", e);
             }
 
diff --git 
a/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConsumerExceptionHandler.java
 
b/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConsumerExceptionHandler.java
index 5ef8657..85db34c 100644
--- 
a/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConsumerExceptionHandler.java
+++ 
b/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConsumerExceptionHandler.java
@@ -58,7 +58,7 @@ public class NettyConsumerExceptionHandler implements 
ExceptionHandler {
             } else {
                 logger.log(msg, exception);
             }
-        } catch (Throwable e) {
+        } catch (Exception e) {
             // the logging exception handler must not cause new exceptions to 
occur
         }
     }
diff --git 
a/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyProducer.java
 
b/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyProducer.java
index 0b74d89..de24c65 100644
--- 
a/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyProducer.java
+++ 
b/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyProducer.java
@@ -665,7 +665,7 @@ public class NettyProducer extends DefaultAsyncProducer {
 
             try {
                 processWithConnectedChannel(exchange, callback, future, body);
-            } catch (Throwable e) {
+            } catch (Exception e) {
                 exchange.setException(e);
                 callback.done(false);
             }
diff --git 
a/components/camel-stomp/src/main/java/org/apache/camel/component/stomp/StompConsumer.java
 
b/components/camel-stomp/src/main/java/org/apache/camel/component/stomp/StompConsumer.java
index ff28a15..7dc993b 100644
--- 
a/components/camel-stomp/src/main/java/org/apache/camel/component/stomp/StompConsumer.java
+++ 
b/components/camel-stomp/src/main/java/org/apache/camel/component/stomp/StompConsumer.java
@@ -53,7 +53,7 @@ public class StompConsumer extends DefaultConsumer {
             exchange.getIn().getHeaders().entrySet().removeIf(e -> 
getEndpoint().getHeaderFilterStrategy()
                     .applyFilterToExternalHeaders(e.getKey(), e.getValue(), 
exchange));
             getProcessor().process(exchange);
-        } catch (Throwable e) {
+        } catch (Exception e) {
             exchange.setException(e);
         }
 
diff --git 
a/components/camel-timer/src/main/java/org/apache/camel/component/timer/TimerConsumer.java
 
b/components/camel-timer/src/main/java/org/apache/camel/component/timer/TimerConsumer.java
index 11d384d..8cc80c4 100644
--- 
a/components/camel-timer/src/main/java/org/apache/camel/component/timer/TimerConsumer.java
+++ 
b/components/camel-timer/src/main/java/org/apache/camel/component/timer/TimerConsumer.java
@@ -81,7 +81,7 @@ public class TimerConsumer extends DefaultConsumer implements 
StartupListener, S
                                     endpoint.getTimerName(), 
endpoint.getRepeatCount());
                             cancel();
                         }
-                    } catch (Throwable e) {
+                    } catch (Exception e) {
                         // catch all to avoid the JVM closing the thread and 
not
                         // firing again
                         LOG.warn(
diff --git 
a/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java 
b/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java
index 1af00d2..267bf8d 100644
--- 
a/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java
+++ 
b/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java
@@ -268,7 +268,7 @@ public abstract class Tracer extends ServiceSupport 
implements RoutePolicyFactor
                         LOG.warn("Tracing: could not find managed span for 
exchange={}", ese.getExchange());
                     }
                 }
-            } catch (Throwable t) {
+            } catch (Exception t) {
                 // This exception is ignored
                 LOG.warn("Tracing: Failed to capture tracing data", t);
             }
@@ -293,7 +293,7 @@ public abstract class Tracer extends ServiceSupport 
implements RoutePolicyFactor
                 if (LOG.isTraceEnabled()) {
                     LOG.trace("Tracing: start server span={}", span);
                 }
-            } catch (Throwable t) {
+            } catch (Exception t) {
                 // This exception is ignored
                 LOG.warn("Tracing: Failed to capture tracing data", t);
             }
@@ -317,7 +317,7 @@ public abstract class Tracer extends ServiceSupport 
implements RoutePolicyFactor
                 } else {
                     LOG.warn("Tracing: could not find managed span for 
exchange={}", exchange);
                 }
-            } catch (Throwable t) {
+            } catch (Exception t) {
                 // This exception is ignored
                 LOG.warn("Tracing: Failed to capture tracing data", t);
             }
@@ -335,7 +335,7 @@ public abstract class Tracer extends ServiceSupport 
implements RoutePolicyFactor
                     fields.put("message", message);
                     span.log(fields);
                 }
-            } catch (Throwable t) {
+            } catch (Exception t) {
                 // This exception is ignored
                 LOG.warn("Tracing: Failed to capture tracing data", t);
             }
diff --git 
a/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/SantuarioUtil.java
 
b/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/SantuarioUtil.java
index 9c9430a..540fb04 100644
--- 
a/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/SantuarioUtil.java
+++ 
b/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/SantuarioUtil.java
@@ -46,7 +46,7 @@ public final class SantuarioUtil {
                     return true;
                 }
             });
-        } catch (Throwable t) {
+        } catch (Exception t) {
             //ignore
         }
         org.apache.xml.security.Init.init();
@@ -60,7 +60,7 @@ public final class SantuarioUtil {
                         return false;
                     }
                 });
-            } catch (Throwable t) {
+            } catch (Exception t) {
                 //ignore
             }
         }
diff --git 
a/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlSignatureProcessor.java
 
b/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlSignatureProcessor.java
index cf270de..455b501 100644
--- 
a/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlSignatureProcessor.java
+++ 
b/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlSignatureProcessor.java
@@ -49,7 +49,7 @@ public abstract class XmlSignatureProcessor implements 
Processor {
         try {
             SantuarioUtil.initializeSantuario();
             SantuarioUtil.addSantuarioJSR105Provider();
-        } catch (Throwable t) {
+        } catch (Exception t) {
             // provider not in classpath, ignore and fall back to jre default
             LOG.info("Cannot add the SantuarioJSR105Provider due to {0}, fall 
back to JRE default.", t);
         }
diff --git 
a/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
 
b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
index 9f9873b..8082992 100644
--- 
a/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
+++ 
b/components/camel-xmlsecurity/src/main/java/org/apache/camel/dataformat/xmlsecurity/XMLSecurityDataFormat.java
@@ -125,7 +125,7 @@ public class XMLSecurityDataFormat extends ServiceSupport 
implements DataFormat,
                     return true;
                 }
             });
-        } catch (Throwable t) {
+        } catch (Exception t) {
             //ignore
         }
         org.apache.xml.security.Init.init();
@@ -139,7 +139,7 @@ public class XMLSecurityDataFormat extends ServiceSupport 
implements DataFormat,
                         return false;
                     }
                 });
-            } catch (Throwable t) {
+            } catch (Exception t) {
                 //ignore
             }
         }
diff --git 
a/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ManagedGroupFactoryBuilder.java
 
b/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ManagedGroupFactoryBuilder.java
index d19fac4..d75ab86 100644
--- 
a/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ManagedGroupFactoryBuilder.java
+++ 
b/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ManagedGroupFactoryBuilder.java
@@ -47,7 +47,7 @@ public final class ManagedGroupFactoryBuilder {
                 beanIntrospection.setProperty(camelContext, instance, 
"classLoader", loader);
                 return (ManagedGroupFactory) instance;
             }
-        } catch (Throwable e) {
+        } catch (Exception e) {
             // Ignore if we'e not in OSGi
         }
         return new StaticManagedGroupFactory(factory.call(), true);

Reply via email to