Commit Graph

3940 Commits

Author SHA1 Message Date
Soby Chacko
4b53c839ac Sending record keys as part of DltAwareProcessor 2023-10-12 20:26:32 -04:00
Oleg Zhurakousky
f811ed0b7c Cleanup and dceprecation removal in core 2023-10-10 13:12:32 +02:00
Soby Chacko
d650f9e1e8 Kafka Streams binder code cleanup
- Remove deprecated API usage
 - Other cleanup
 - EmbeddedKafka changes in tests
2023-10-09 21:12:27 -04:00
dependabot[bot]
93c4fe39ae Bump org.apache.avro:avro from 1.11.1 to 1.11.3 in /schema-registry
Bumps org.apache.avro:avro from 1.11.1 to 1.11.3.

---
updated-dependencies:
- dependency-name: org.apache.avro:avro
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-02 10:05:10 -04:00
Soby Chacko
cf6cea6525 GH-2817: Method name clash in Kafka Streams binder
- When there are two methods with the same name but with different type erasures,
   Kafka Streams binder sometimes detects the incorrect method. Fixing this issue
   by specifically type checking the return type for Kafka Streams types.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2817
2023-09-29 21:24:31 -04:00
Soby Chacko
d1a0aff623 GH-2820: Component beans and function return types
- When Kafka Streams functions are provided as component beans,
   the function type check in the core Spring Cloud Stream framework,
   fails with an NPE. Addressing this issue.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2820
2023-09-29 17:00:09 -04:00
Soby Chacko
3a52c3b3cf GH-2821: Kafka Streams branching as Component bean
- When Kafka Streams branching function is provided as a Component bean,
   there is an issue where the raw class check on the return outbound
   resolvable type cuases an NPE. Fixing this issue by adding a null check
   on the return type's raw class.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2821
2023-09-29 16:27:04 -04:00
Soby Chacko
895570fb48 Code cleanup: AbstractKafkaStreamsBinderProcessor
- Remove deprecation warnings
 - Other code cleanup
2023-09-29 15:33:09 -04:00
Soby Chacko
5ea391beb0 GH-2823: Messages routed to the wrong consumer
- When event-type routing is enabled in Kafka Streams binder
   and conurrency > 1 is used, messages are occasionally getting
   dispatched to the wrong consumer causing CCE. This is due
   to a race condition caused by a shared resource across threads.
   Fixing the issue by introducing a ThreadLocal variable.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2823
2023-09-29 10:43:43 -04:00
Soby Chacko
db5b717fc4 StreamBridge test cleanup
- Fix a race condtion that causes a CI failure
2023-09-28 15:35:46 -04:00
Oleg Zhurakousky
a74b3d5e99 Disabled few tests temporarily to get clean GH actions build 2023-09-28 16:55:24 +02:00
buildmaster
cd0e3c1a38 Going back to snapshots 2023-09-27 10:33:44 +00:00
buildmaster
ecaf757a38 Update SNAPSHOT to 4.1.0-M2 2023-09-27 10:29:34 +00:00
Soby Chacko
bca3dd5566 DltAwareProcessor improvements
- Instead of using a BiFunction as a delegate, use standard Function that takes the full record
 - Remove Supplier<Long> that was used to handle record time stamps since this is no longer needed
 - Docs cleanup
2023-09-26 21:34:22 -04:00
Chris Bono
ca2d3046b9 Remove Boot version from Pulsar binder pom.xml (#2819) 2023-09-26 09:33:44 -05:00
Chris Bono
b51e9e408b Update Pulsar binder to Spring Boot 3.2.0-M3 (#2818) 2023-09-26 09:07:20 -05:00
Oleg Zhurakousky
38ce1f79d9 Fix property value type 2023-09-26 07:09:46 +02:00
Chris Bono
e5c298e3bc Add Pulsar binder to the BOM 2023-09-25 10:35:49 -04:00
spencergibb
4c876b1a7f Adds antora extension and updates ui version 2023-09-22 16:13:10 -04:00
Oleg Zhurakousky
7ee4f61943 Updated observability doc 2023-09-22 15:16:00 +02:00
Soby Chacko
aeb88d01e9 KafkaBinderTests cleanup
- Remove deprecations
 - Other minor cleanup
2023-09-21 15:34:32 -04:00
Oleg Zhurakousky
2c7a883b8c Polish observability doc 2023-09-21 19:09:09 +02:00
Chris Bono
1ef65b340d Polish "GH-2806: Pulsar binder defaults properties config" 2023-09-21 10:01:40 -05:00
Soby Chacko
34aae4b62d GH-2806: Pulsar binder defaults properties config
- Ensure that the Pulsar binder default properties can be properly
   expressed via spring.cloud.stream.pulsar.default property prefix.
 - Add the binder child context bean with the name binderName_binderProducingContext
   into the parent application context so that individual beans from the binder context
   can be easily queried.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2806
2023-09-21 09:37:54 -05:00
Soby Chacko
e06d4eedfd GH-2662: Kafka binder DLQ root cause message (#2812)
- Becasue NestedRuntimeException from Spring Framework core 6.x removed
   the getMessage method that included the detailMessage with cause in it,
   the Kafka binder DLQ records no longer include the cause message.
   Fix this issue by including the cause in the exception message.

See this comment for more details:
 - https://github.com/spring-cloud/spring-cloud-stream/issues/2662#issuecomment-1722849892
This fix is based on the following Spring Kafka commit.
 - 6f585058a6

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2662
2023-09-20 11:28:13 -04:00
Oleg Zhurakousky
ffabdb8bf9 GH-2782 Add initial observability documentation including reactive hooks
Resolves #2782
2023-09-20 17:23:49 +02:00
Soby Chacko
7e7688ce1b GH-2805: StreamBridge send and custom content-type
- When StreamBridge#send is called with binder-name and custom content-type,
   it does not honor the content-type value, but default to application/json.
   Fixing this issue for this call path by explicitly checking for any custom
   content-type provided on the binding.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2805
Resolves #2813
2023-09-20 13:09:51 +02:00
Soby Chacko
316d393fe9 buildPulsarBinder script 2023-09-19 17:39:47 -04:00
omercelikceng
248fe01b9a Cloud Stream Core RuntimeHints
- Adding missing runtime hints for Stream Binding (InputBindingLifecycle and OutputBindingLifecycle)

Resolves spring-cloud#2793
2023-09-19 16:39:18 -04:00
Oleg Zhurakousky
32aae10ce3 Polish new antora doc 2023-09-18 16:38:29 +02:00
Soby Chacko
28ebf327fc Make AbstractBindingLifecycle public
See this discussion for details:
https://github.com/spring-cloud/spring-cloud-stream/pull/2793#issuecomment-1715420091
2023-09-14 10:57:29 -04:00
Chris Bono
db54f5e730 Update Pulsar binder to use new Spring Pulsar starter.
The PulsarBinder relies on the Spring Pulsar Spring Boot starter.
The starter moved out of the spring-pulsar core repo and into
Spring Boot proper. This commit updates the Pulsar binder to
use the new coordinates for the Spring Boot based starter.

* Additionally, the PulsarProperties were greatly reduced in the
  move to Spring Boot. As such, the binder exposes an extended
  set of config properties for producer/consumer (the initial
  set supported before the property reduction).
2023-09-14 10:33:06 -04:00
Soby Chacko
3c65104b1d GH-2796: Fix partition count related issues (#2807)
If a target middleware (Kafka for ex) topic has more partitions
than what is set on the partition-count producer property, the binder
never updates the original producer partition-count property to the
partition count from the middleware if it is higher than what was given
through the property. Because of this, te PartitionAwareFunctionWrapper
which evaluates and assigns the partition header in Spring Cloud Stream
does not compute the correct partition since the hash operation still
using the original partition-count from the producer binding property.
This commit is addressing this issue.

Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2796
2023-09-14 08:52:14 -04:00
Oleg Zhurakousky
6a2ba83f6b Migrate RabbitMQ docs to antora 2023-09-14 11:48:01 +02:00
Soby Chacko
6d26ab75d2 Kafka binder antora docs cleanup 2023-09-14 11:48:01 +02:00
Oleg Zhurakousky
4ff968dd1b Finish doc organization for core and schema-registry 2023-09-14 11:48:01 +02:00
Oleg Zhurakousky
13c1afc351 Continue doc organization 2023-09-14 11:48:00 +02:00
Oleg Zhurakousky
f2085f7fba [Antora] Organize Intro and Main Concepts sections 2023-09-14 11:48:00 +02:00
Soby Chacko
6cfeb744d2 More Antora error fixing and cleanup 2023-09-14 11:48:00 +02:00
Oleg Zhurakousky
71e775a70f Initial antora error fixing 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
1084c3f67f WIP 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
c724c0d56e Enable Section Summary TOC for small pages 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
bb4186b856 Fix cross references 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
f2cff0c609 Remove includes 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
95192334fe Generate a default navigation 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
c2278acba9 Split files 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
73394a48ef Fix indentation for all pages 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
039893aadb Copy default antora files 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
ad39d8b9e6 Remove unnecessary asciidoc attributes 2023-09-14 11:48:00 +02:00
Marcin Grzejszczak
53dc8e151e Insert explicit ids for headers 2023-09-14 11:48:00 +02:00