Introducing the capability of routing records based on
event types. If a header in the incoming record contains
the event type set on the binding, then the function
associated with that binding gets invoked.
Adding test/docs.
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/1003
When there are multiple functions present with different outbound target types,
there is an issue of one function overriding the target type of a previous function
in the catalogue where the binder stores the target type information.
This causes problems for the binder initiated Serde inference. Addressing the issue.
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/994
* Allow retries in Kafka Streams binder
Provide applications the capability to retry critical sections of the
business logic. This is accomplished through a new API using which
critical path can be wrapped inside a Callable.
Adding tests and docs.
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/945
* Reworking the PR
Remove the binder API that was added before for retrying.
Reuse binding provided RetryTemplate.
Tests and docs
* Cleanup
* Addressing PR review comments
* Fix typo
* Custom DLQ Destination Resolver
Allow applications to provide a custom DLQ destination resolver
implementaiton by providing a new interface DlqDestinationResolver
as part of binder's public contract. This interface is a BiFunction
extension using which the applications can provide more fine grained
control over where to route records in error.
Adding test to verify.
Adding docs.
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/966
* Add DlqDestinationResolver to MessageChannel based binder.
Tests and docs
Spring Kafka -> 2.6.3-SNAPSHOT
Spring Integration Kafka -> 5.4.0-SNAPSHOT
Kafka version -> 2.6.0
Use Kafka_2.13 for tests
Ungignore the Jaas security tests.
Unignore a few Kafka Streams binder tests.
If the user has not explicitly set the `SreamsConfig.REPLICATION_FACTOR_CONFIG`,
set it from the binder property.
This is used for infrastructure topics (change logs and repartition topics).
* Kafka Streams metrics in the binder for Boot 2.2 users are streamlined to
reflect the Micrometer native support added with version 1.4.0 which is
available through Boot 2.3. While Boot 2.3 users will get this native support
from Micrometer, Boot 2.2 users will still rely on the custom implementation
in the binder. This commit aligns that custom implemenation more with
the native implementation.
* Disable the custom Kafka Streams metrics bean which is mentioned above
(KafkaStreamsBinderMetrics) when the application is on Boot 2.3, as this
implementation is only applicable for Boot 2.2.x.
* Update docs
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/880
Kafka Streams topology actuator endpoint had a conflict with the JMX exporter
and was causing some IDE issues. Renming this endpoint to kafkastreamstopology.
Renaming the underlying methods in this actuator endpoint implentation.
Updating docs.
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/895
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/914
Boot no longer uses the deprecated JMX MBean scraping provided by Micrometer.
Add configuration to add Micrometer Meters when Micrometer and spring-kafka 2.5.x are on
the class path.
Micrometer for Streams
- work around until SK 2.5.3
In Kafka Streams binder, we use a complex strategy to handle
applications provided concurrency. Simplify this process while
making the binder stay aligned with boot -> binder -> binding
hierrachy for concurrency (num.stream.threads).
Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/905Resolves#907
* Add InteractiveQueryService.getAllHostsInfo to fetch metadata
of all instances that handles specific store.
* Test to verify this new API (in the existing InteractiveQueryService tests).
spring-cloud-build to 3.0.0 snapshot
spring kafka to 2.4.x snapshot
SIK 3.2.1
Remove a test that has behavior inconsistent with new changes in Spring Kafka 2.4
where all error handlers have isAckAfterHandle() true by default. The test for
auto commit offset on error without dlq was expecting this acknowledgement to not
to occur. If applications need to have the ack turned off on error, they should provide a
container customizer where it sets the ack to false. Since this is not a binder
concern, we are removing the test testDefaultAutoCommitOnErrorWithoutDlq.
Cleaning up in Kafka Streams binder tests.