Camel Kafka Connector allows you to use all Camel components as Kafka Connect connectors https://camel.apache.org
  • Java 99.3%
  • Shell 0.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Brian Hayden b240c5503b
Some checks are pending
Camel Kafka Connect CI / build (false, 17) (push) Waiting to run
Camel Kafka Connect CI / build (true, 21) (push) Waiting to run
Maven Plugins IT / build (false, 17) (push) Waiting to run
Maven Plugins IT / build (true, 21) (push) Waiting to run
Fix #1730: apply the camel.source.pollingConsumer* options to the SEDA hand-off queue (#1870)
The source task receives exchanges through seda:end, but the
camel.source.pollingConsumer* options were only added to its URI as the
generic DefaultEndpoint polling-consumer options, which SedaEndpoint
ignores. The queue kept SEDA's defaults (size 1000, blockWhenFull=false),
so a burst failed with IllegalStateException: Queue full.

Pass the values as SEDA's own size, blockWhenFull and offerTimeout
options too. A negative pollingConsumerBlockTimeout is clamped to 0,
since a negative offerTimeout makes SEDA fall back to add() and throw
when full; the option is documented as "0 or negative means no timeout".

Behaviour change: with the default blockWhenFull=true the Camel consumer
thread now blocks while the queue is full, and the endpoint size takes
precedence over camel.component.seda.queueSize. A consumer blocked on a
full queue holds an in-flight exchange, so stopping the task can wait up
to camel.main.shutdownTimeout, longer than Kafka Connect's default
task.shutdown.graceful.timeout.ms of 5s. The user guide documents this.

Signed-off-by: Brian Hayden <5826711+bhayden53@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 10:49:27 +01:00
.github build(deps): bump actions/setup-java from 6.0.1 to 6.1.0 (#1847) 2026-10-26 11:20:06 +01:00
.mvn Fix #1804: harden CI workflows and pin the build toolchain (#1816) 2026-08-24 15:38:22 +02:00
.oss-ai-helper-rules chore: add OSS Helper project rules for AI-assisted contributions 2026-06-26 11:53:52 +02:00
archetypes [maven-release-plugin] prepare for next development iteration 2026-09-18 12:22:58 +02:00
buildingtools [maven-release-plugin] prepare for next development iteration 2026-09-18 12:22:58 +02:00
camel-kafka-connector-catalog chore: regenerate the connector metadata for 4.22.1-SNAPSHOT (#1867) 2026-11-05 13:08:46 +01:00
config Fixed the examples by using the correct classes 2020-05-27 14:57:38 +02:00
connectors chore: regenerate the connector metadata for 4.22.1-SNAPSHOT (#1867) 2026-11-05 13:08:46 +01:00
core Fix #1730: apply the camel.source.pollingConsumer* options to the SEDA hand-off queue (#1870) 2026-11-06 10:49:27 +01:00
distribution [maven-release-plugin] prepare for next development iteration 2026-09-18 12:22:58 +02:00
docs Fix #1730: apply the camel.source.pollingConsumer* options to the SEDA hand-off queue (#1870) 2026-11-06 10:49:27 +01:00
examples Converted the file sink example to use properties instead of URL and added comments 2021-06-23 18:24:54 +02:00
parent Fix #1767: document the JDBC drivers to add and bundle the PostgreSQL driver (#1854) 2026-11-05 11:36:05 +01:00
release-utils Point to origin 2026-03-24 18:03:37 +01:00
tests Fix #743: add integration tests for the FTP, FTPS and SFTP connectors (#1868) 2026-11-05 13:09:04 +01:00
tooling Fix #1195: make the docs plugin paths configurable and detect connectors by manifest (#1856) 2026-11-05 11:36:37 +01:00
.asf.yaml Set up default protection ruleset for default and release branches (#1773) 2026-05-28 19:03:53 +02:00
.gitignore Updated release documentatio with some automation and added a missing step. 2024-10-07 11:19:57 +02:00
.gitmodules Changelog action added as submodule 2021-02-02 07:43:53 +01:00
AGENTS.md Add project Security Model, SECURITY.md and AGENTS.md (#1771) 2026-05-15 11:57:08 +02:00
CHANGELOG.md Updated CHANGELOG.md 2026-11-06 03:05:25 +00:00
Jenkinsfile Removed CulpritsRecipientProvider and use DevelopersRecipientProvider in Jenkinsfile (#1596) 2024-02-01 09:47:41 +01:00
Jenkinsfile.deploy Removed CulpritsRecipientProvider and use DevelopersRecipientProvider in Jenkinsfile (#1596) 2024-02-01 09:47:41 +01:00
Jenkinsfile.jdk17 Removed CulpritsRecipientProvider and use DevelopersRecipientProvider in Jenkinsfile (#1596) 2024-02-01 09:47:41 +01:00
KEYS chore(pgp): update pgp key for Nicola Ferraro 2020-06-04 12:29:09 +02:00
LICENSE.txt Adding Keys, Notice and License files 2019-12-05 10:48:46 +01:00
mvnw Upgrade to maven wrapper 3.9.8 2024-07-09 06:55:49 +02:00
mvnw.cmd Upgrade to maven wrapper 3.9.8 2024-07-09 06:55:49 +02:00
NOTICE.txt Adding Keys, Notice and License files 2019-12-05 10:48:46 +01:00
pom.xml Fix #1644: emit ServiceLoader manifests for plugin.discovery=service_load (#1842) 2026-09-22 10:23:15 +02:00
README.adoc Change note in README 2024-09-14 16:47:52 +02:00
SECURITY.md Add project Security Model, SECURITY.md and AGENTS.md (#1771) 2026-05-15 11:57:08 +02:00

= Camel Kafka Connector

image:https://img.shields.io/badge/zulip-join_chat-brightgreen.svg["Chat on Zulip", link="https://camel.zulipchat.com"]
image:https://github.com/apache/camel-kafka-connector/workflows/master%20build/badge.svg[Master Build, link="https://github.com/apache/camel-kafka-connector/actions?query=workflow%3A%22master+build%22"]

== Introduction
[NOTE]
====
This project is mostly based on the Kamelets catalog we are providing in https://github.com/apache/camel-kamelets
The connectors released in this repository are based on Kamelets catalog.
====

This is a "Camel Kafka connector adapter" that aims to provide a user-friendly way to use all Apache Camel components in Kafka Connect.
For more information about Kafka Connect take a look http://kafka.apache.org/documentation/#connect[here].

== Build the project
[source,bash]
----
mvn clean package
----

== Run integration tests
To run the integration tests it is required to:

  * have Docker version 17.05 or higher running
  * then run:
+
[source,bash]
----
mvn -DskipIntegrationTests=false clean verify package
----

It is also possible to point the tests to use an external services. Please check the
link:./docs/modules/ROOT/pages/testing.adoc[testing guide].

== Documentation

Read the https://camel.apache.org/camel-kafka-connector/latest/index.html[Official latest documentation] or try the local link:./docs/modules/ROOT/pages/user-guide/index.adoc[Getting started guide].