Skip to content

Error reporting configuration incorrectly handled #835

Closed
@orpiske

Description

@orpiske

The sink connector does not respect the new error reporting configuration from Kafka Connect. As of Kafka 2.6, it seems, we should be using the Errant Record Reporter to ensure that failed records are put into the DLQ.

One way to verify this issue is to use an invalid JMS broker address in the CamelSinkJMSITCase test. This causes a failure in the component which, eventually, leads to a ConnectionException and lost records.

Here's a snippet taken from one of my logs as an example:

Caused by: org.apache.kafka.connect.errors.ConnectException: Exchange delivery has failed!
        at org.apache.camel.kafkaconnector.CamelSinkTask.put(CamelSinkTask.java:185) ~[camel-kafka-connector-0.8.0-SNAPSHOT.jar:0.8.0-SNAPSHOT]
        at org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:560) ~[connect-runtime-2.6.0.jar:?]
        ... 10 more
Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: sjms2://ckc.queue due to: javax.jms.JMSException: No Provider scheme specified.

The message is not sent to the DLQ in this case, which violates the expected behavior.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions