Commit Graph

3821 Commits

Author SHA1 Message Date
Gary Russell
ee01cc9e50 GH-2729: Reactor Kafka Binder SenderResult Support (#2730)
* GH-2729: Reactor Kafka Binder SenderResult Support

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2729

Allow configuration of a `FluxMessageChannel` to receive `SenderResult`s.
Add `SenderResultMessageHandler` to consume from that channel.

Remove undocumented `sendResult` header, which has no value without the
sender result correlation metadata.

* Add integration test and polish property docs.

- result channel must be FMC for reactive binder.

* Add documentation.

* Remove SenderResultMessageHandler.
2023-05-22 15:27:00 -04:00
Soby Chacko
acb81954f4 Kafka binder partitioning doc improvements (#2735)
* Kafka binder partitioning doc improvements

* Update docs/src/main/asciidoc/kafka/kafka_partitions.adoc

Co-authored-by: Gary Russell <grussell@vmware.com>

* Update docs/src/main/asciidoc/kafka/kafka_partitions.adoc

Co-authored-by: Gary Russell <grussell@vmware.com>

* Update docs/src/main/asciidoc/kafka/kafka_partitions.adoc

Co-authored-by: Gary Russell <grussell@vmware.com>

---------

Co-authored-by: Gary Russell <grussell@vmware.com>
2023-05-22 15:26:53 -04:00
Soby Chacko
46cc68a3d6 Reactive Kafka Binder errors when concurrency > 1 (#2734)
* Reactive Kafka Binder errors when concurrency > 1

When using Reactive Kafka binder, it is allowed to have concurrency > 1.
There is a check in FunctionConfiguration that throws an error if concurrency
is > 1, when using reactive types. Since it is allowed to do so with
Reative Kafka binder, switch this conversion into a warning log message.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2726

* Update core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java

Co-authored-by: Gary Russell <grussell@vmware.com>

* Update core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java

Co-authored-by: Gary Russell <grussell@vmware.com>

* Update core/spring-cloud-stream-integration-tests/src/test/java/org/springframework/cloud/stream/function/ImplicitFunctionBindingTests.java

Co-authored-by: Gary Russell <grussell@vmware.com>

---------

Co-authored-by: Gary Russell <grussell@vmware.com>
2023-05-22 15:26:43 -04:00
oliverfuehrer
6e6267fbd0 Dynamic partition improvements in Kafka binder
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2706

  - Update partition count changes in Kafka dynamically during runtime
  - Checkstyle fixes
  - PartitionHandler changes
  - Improved handling of expression with 'payload' in the logic
  - Removed getter/setter for PartitionHandler and use ReflectionUtils within Test
  - Renamed property to 'dynamicPartitionUpdatesEnabled' and improved documentation (also one line per sentence)
  - Improved/renamed test to use embeddedkafka and really test update behaviour
  - Javadoc
2023-05-09 10:46:36 -04:00
Soby Chacko
c80c14f8a4 Allow BindableFunctionProxyFactory to be used from outside
Make the top-level constructor of BindableFunctionProxyFactory public
so that external clients could access it.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2721
2023-05-09 10:46:04 -04:00
Soby Chacko
830b6226e6 Fix checkstyle issues 2023-05-09 10:45:45 -04:00
Soby Chacko
71b9cf1aa7 Fix failing schema registry test
Spring Boot 3.1 introduced an extra isEnabled method in Ssl class
that causes an ambiguity when used in method references.
Use explicit lambda expression instead.
2023-05-09 10:45:27 -04:00
Soby Chacko
6087af7073 Fixing a Kafka binder unit test failure
Latest version of Mockito (5.3.0) used in Spring Boot 3.1.0,
apparently needs the specific Collection type when capturing
values via the ArgumentCaptor. Earlier versisons didn't mandate this.
2023-05-09 10:44:58 -04:00
Chris Bono
89a80e1dcf Port Pulsar binder auto-config changes from 0.2.x (#2724)
* Port "Use builder to autoconfigure PulsarProducerFactory"

- Syncs changes from spring-pulsar/0.2.x/8bee5ef6e907b80933419f639f9f1bb6a3669ec5

* Port "Use builder to autoconfigure PulsarConsumerFactory"

- Syncs changes from spring-pulsar/0.2.x @ 82458872b52024f5464e677bf21763ccf564c0d2

* Port "Use builder to autoconfigure PulsarAdministration"

- Syncs changes from spring-pulsar/0.2.x @ d38cc6cb8d1a1d12499e302cbee75c00211e3537
2023-05-08 19:14:10 -04:00
Jay Kim
fe5ac0cd55 Correct configuration path for AckMode in the kafka tips document 2023-04-25 09:57:29 -04:00
Oleg Zhurakousky
080cc123b6 Made deprecated method private in OutputDestination 2023-04-25 09:56:59 -04:00
Soby Chacko
e07be0fc10 Verifying binder name/type on bindings endpoint
Adding tests for https://github.com/spring-cloud/spring-cloud-stream/issues/2716
2023-04-20 14:48:37 -04:00
Soby Chacko
201d0f6c81 Binder name in actuator binding endpoints
- Fixing an issue where binder name is broken in bindings endpoint
   when default-binder property is provided with multiple binders
   on the classpath.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2716
2023-04-20 13:21:08 -04:00
Gary Russell
8c6854e4f5 GH-2709: Reactive Kafka Binder Pattern Docs 2023-04-19 11:02:18 -04:00
Marc DiPasquale
0cb1c57075 Add Solace updates 2023-04-19 11:02:06 -04:00
Soby Chacko
15fa434b21 Clarify docs for binding keys with special chars
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2699
2023-04-19 11:01:55 -04:00
Soby Chacko
ca89bf4755 Enhancing docs on the usage of test binder
- Docs on mixing test binder and the actual middleware based binder.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2684
2023-04-19 11:01:39 -04:00
Gary Russell
f63b735ee7 GH-2709: Reactive Kafka Binder and Topic Patterns
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2709

Add support for `...destinationIsPattern` as is supported by the message channel
binder.
2023-04-19 11:01:17 -04:00
Chris Bono
cf42893e9c GH-2705: AOT support complex binding properties
- Sets the conversion service on AOT child binder
  contexts to allow complex properties to be
  bound in extended binding props

Fixes #2705
2023-04-19 11:01:05 -04:00
Oleg Zhurakousky
34d7927dea GH-2707 Add PostProcessing documentation
Resolves #2707
2023-04-19 11:00:09 -04:00
Oleg Zhurakousky
34bde8f15b GH-2707 Add support for function post processing 2023-04-19 10:59:47 -04:00
Soby Chacko
02c2138cb9 Remove lingering kinesis binder build script 2023-04-12 19:31:54 -04:00
Soby Chacko
70ba9eef21 Remove hardcoded jackson version in schema registry 2023-04-12 19:31:38 -04:00
Soby Chacko
42424577c5 Initial migration for the Pulsar binder 2023-04-11 18:23:48 -04:00
Soby Chacko
d3ef5c42ef Update version to 4.1.0-SNAPSHOT 2023-04-11 15:51:56 -04:00
dependabot[bot]
06a86a1105 Bump jackson-databind from 2.13.4.1 to 2.13.4.2
Bumps [jackson-databind](https://github.com/FasterXML/jackson) from 2.13.4.1 to 2.13.4.2.
- [Release notes](https://github.com/FasterXML/jackson/releases)
- [Commits](https://github.com/FasterXML/jackson/commits)

---
updated-dependencies:
- dependency-name: com.fasterxml.jackson.core:jackson-databind
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Resolves #2681
2023-04-11 14:48:16 +02:00
조찬형[Plasma]
d5e5699f3b Replace duplicate code with existing method
Resolves #2702
2023-04-11 14:36:54 +02:00
Gary Russell
57733739e5 GH-2673: Use Binder Admin Config with Observation
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2673

Also configure observation (if enabled) on DLQ template.
Resolves #2703
2023-04-11 14:33:42 +02:00
Soby Chacko
dd8e707e01 Update Kafka Streams binder docs
spring.cloud.stream.function.definition -> spring.cloud.function.definition.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2680
2023-04-05 16:48:35 -04:00
Gary Russell
f48523f774 GH-2691: Kafka Reactive Binder Support Multiplex (#2698)
* GH-2691: Kafka Reactive Binder Support Multiplex

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2691

* Add docs.
2023-04-05 15:50:07 -04:00
Gary Russell
92279db2a1 GH-2686: Reactive Kafka Fix Auto Commit
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2686

Due to `.concatMap()`, offsets were committed before passing the records to
the pipeline.
2023-04-05 15:46:54 -04:00
Ilya Serbis
4b7ced0062 Update documentation
fix code and bring it in line with the codebase
2023-04-05 10:29:08 -04:00
Chris Bono
a01bf30d38 GH-2655: AOT support user declared binders
- Adds support for AOT child context generation
  for user-declared binder configurations.

Fixes #2655
2023-04-04 20:50:55 -04:00
Marcin Zajączkowski
43d3d9c415 Include also topic name is warnings and errors
Here the messages related to unexpected number of partitions.
Prior to that, it could be not trivial to be sure what topic is affected.

checkstyle fix
2023-04-04 10:44:19 -04:00
Gary Russell
64835ef1d7 GH-2685: Reactive Kafka Customizers - Add Generics
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2685

Required to allow customization of serializers/deserializers.
2023-04-03 13:11:34 -04:00
Soby Chacko
b814c0f395 Rely on Boot for reactor-kafka dependency 2023-04-03 12:04:56 -04:00
Soby Chacko
4c78d862eb Update reactor-kafka to 1.3.17
Update reactor-kafka to 1.3.17 in reactive-kafka binder

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2678
2023-03-30 14:27:21 -04:00
buildmaster
ea37eed9be Bumping versions 2023-03-29 17:33:29 +00:00
buildmaster
b2f2b51b90 Bumping versions 2023-03-28 17:27:48 +00:00
buildmaster
58c028f339 Bumping versions to 4.0.3-SNAPSHOT after release 2023-03-28 14:51:23 +00:00
buildmaster
c45f2e3ac7 Going back to snapshots 2023-03-28 14:51:22 +00:00
buildmaster
d932cf990f Update SNAPSHOT to 4.0.2 2023-03-28 14:47:17 +00:00
Oleg Zhurakousky
fdbe16929e Update pom.xml 2023-03-28 16:26:38 +02:00
Oleg Zhurakousky
3cb3613ccf Update pom.xml 2023-03-28 16:25:26 +02:00
Marcin Grzejszczak
ce502ddae6 Update pom.xml 2023-03-28 11:55:42 +02:00
Marcin Grzejszczak
b32a701c11 Update pom.xml 2023-03-28 11:51:15 +02:00
Marcin Grzejszczak
d0fe452b88 Update pom.xml 2023-03-28 11:49:28 +02:00
Oleg Zhurakousky
4936cba75b GH-2663 Remove references to deprecated property
Resolves #2663
2023-03-28 08:59:11 +02:00
Soby Chacko
9259d6425e Display binder name in bindings actuator endpoint
- Resolve binder name and type from default binder if they
   are not provided as part of binding properties.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2664
2023-03-27 13:48:14 -04:00
Oleg Zhurakousky
ee7e95de27 Upgrade reactor 2023-03-27 19:12:21 +02:00