You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I edited for clarity, punctuation, grammar, spelling, usage, and corporate voice.
I also added a few links (mostly to Javadoc).
Further changes to account for changes made while I was working
Someone made changes to a few paragraphs, so I edited the changed material, too.
* Fix "One Sentence per Line" violations
Copy file name to clipboardExpand all lines: src/reference/asciidoc/appendix.adoc
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,9 @@
1
1
[[deps-for-21x]]
2
2
== Override Dependencies to use the 2.1.x kafka-clients with an Embedded Broker
3
3
4
-
When using `spring-kafka-test` (version 2.2.x) with the 2.1.x `kafka-clients` jar, you will need to override certain transitive dependencies as follows:
4
+
When you use `spring-kafka-test` (version 2.2.x) with the 2.1.x `kafka-clients` jar, you need to override certain transitive dependencies, as follows:
5
5
6
+
====
6
7
[source, xml]
7
8
----
8
9
<dependency>
@@ -46,6 +47,7 @@ When using `spring-kafka-test` (version 2.2.x) with the 2.1.x `kafka-clients` ja
Copy file name to clipboardExpand all lines: src/reference/asciidoc/changes-since-1.0.adoc
+43-35Lines changed: 43 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,69 +5,75 @@
5
5
6
6
This version requires the 1.0.0 `kafka-clients` or higher.
7
7
8
-
NOTE: The 1.1.x client is supported, with _version 2.1.5_, but you will need to override dependencies as described in <<deps-for-11x>>.
9
-
The 1.1.x client will be supported natively in _version 2.2_.
8
+
NOTE: The 1.1.x client is supported with version 2.1.5, but you need to override dependencies as described in <<deps-for-11x>>.
9
+
10
+
// TODO: No topic marked deps-for-11x exists in any of the files in the directory that contains this file.
11
+
12
+
The 1.1.x client is supported natively in version 2.2.
10
13
11
14
==== JSON Improvements
12
15
13
-
The `StringJsonMessageConverter` and `JsonSerializer` now add type information in `Headers`, allowing the converter and `JsonDeserializer` to create specific types on reception, based on the message itself rather than a fixed configured type.
16
+
The `StringJsonMessageConverter` and `JsonSerializer` now add type information in `Headers`, letting the converter and `JsonDeserializer` create specific types on reception, based on the message itself rather than a fixed configured type.
14
17
See <<serdes>> for more information.
15
18
16
19
17
20
==== Container Stopping Error Handlers
18
21
19
-
Container Error handlers are now provided for both record and batch listeners that treat any exceptions thrown by the listener as fatal; they stop the container.
22
+
Container error handlers are now provided for both record and batch listeners that treat any exceptions thrown by the listener as fatal/
23
+
They stop the container.
20
24
See <<annotation-error-handling>> for more information.
21
25
22
-
==== Pausing/Resuming Containers
26
+
==== Pausing and Resuming Containers
23
27
24
-
The listener containers now have `pause()` and `resume()` methods (since _version 2.1.3_).
28
+
The listener containers now have `pause()` and `resume()` methods (since version 2.1.3).
25
29
See <<pause-resume>> for more information.
26
30
27
31
==== Stateful Retry
28
32
29
-
Starting with _version 2.1.3_, stateful retry can be configured; see <<stateful-retry>> for more information.
33
+
Starting with version 2.1.3, you can configure stateful retry.
34
+
See <<stateful-retry>> for more information.
30
35
31
36
==== Client ID
32
37
33
-
Starting with _version 2.1.1_, it is now possible to set the `client.id` prefix on `@KafkaListener`.
34
-
Previously, to customize the client id, you would need a separate consumer factory (and container factory) per listener.
35
-
The prefix is suffixed with `-n` to provide unique client ids when using concurrency.
38
+
Starting with version 2.1.1, you can now set the `client.id` prefix on `@KafkaListener`.
39
+
Previously, to customize the client ID, you needed a separate consumer factory (and container factory) per listener.
40
+
The prefix is suffixed with `-n` to provide unique client IDs when you use concurrency.
36
41
37
42
38
43
==== Logging Offset Commits
39
44
40
-
By default, logging of topic offset commits is performed with the DEBUG logging level.
41
-
Starting with _version 2.1.2_, there is a new property in `ContainerProperties` called `commitLogLevel` which allows you to specify the log level for these messages.
45
+
By default, logging of topic offset commits is performed with the `DEBUG` logging level.
46
+
Starting with version 2.1.2, a new property in `ContainerProperties` called `commitLogLevel` lets you specify the log level for these messages.
42
47
See <<kafka-container>> for more information.
43
48
44
49
==== Default @KafkaHandler
45
50
46
-
Starting with _version 2.1.3_, one of the `@KafkaHandler` s on a class-level `@KafkaListener` can be designated as the default.
51
+
Starting with version 2.1.3, you can designate one of the `@KafkaHandler` annotations on a class-level `@KafkaListener` as the default.
47
52
See <<class-level-kafkalistener>> for more information.
48
53
49
54
==== ReplyingKafkaTemplate
50
55
51
-
Starting with _version 2.1.3_, a subclass of `KafkaTemplate` is provided to support request/reply semantics.
56
+
Starting with version 2.1.3, a subclass of `KafkaTemplate` is provided to support request/reply semantics.
52
57
See <<replying-template>> for more information.
53
58
54
59
==== ChainedKafkaTransactionManager
55
60
56
-
_version 2.1.3_ introduced the `ChainedKafkaTransactionManager` see <<chained-transaction-manager>> for more information.
61
+
Version 2.1.3 introduced the `ChainedKafkaTransactionManager`.
62
+
See <<chained-transaction-manager>> for more information.
57
63
58
64
==== Migration Guide from 2.0
59
65
60
-
https://github.com/spring-projects/spring-kafka/wiki/Spring-for-Apache-Kafka-2.0-to-2.1-Migration-Guide[2.0 to 2.1 Migration].
66
+
See the https://github.com/spring-projects/spring-kafka/wiki/Spring-for-Apache-Kafka-2.0-to-2.1-Migration-Guide[2.0 to 2.1 Migration] guide.
61
67
62
68
=== Changes Between 1.3 and 2.0
63
69
64
70
==== Spring Framework and Java Versions
65
71
66
72
The Spring for Apache Kafka project now requires Spring Framework 5.0 and Java 8.
67
73
68
-
==== @KafkaListener Changes
74
+
==== `@KafkaListener` Changes
69
75
70
-
You can now annotate `@KafkaListener` methods (and classes, and `@KafkaHandler` methods) with `@SendTo`.
76
+
You can now annotate `@KafkaListener` methods (and classes and `@KafkaHandler` methods) with `@SendTo`.
71
77
If the method returns a result, it is forwarded to the specified topic.
72
78
See <<annotation-send-to>> for more information.
73
79
@@ -76,7 +82,7 @@ See <<annotation-send-to>> for more information.
76
82
Message listeners can now be aware of the `Consumer` object.
77
83
See <<message-listeners>> for more information.
78
84
79
-
==== ConsumerAwareRebalanceListener
85
+
==== Using `ConsumerAwareRebalanceListener`
80
86
81
87
Rebalance listeners can now access the `Consumer` object during rebalance notifications.
82
88
See <<rebalance-listeners>> for more information.
@@ -85,40 +91,42 @@ See <<rebalance-listeners>> for more information.
85
91
86
92
==== Support for Transactions
87
93
88
-
The 0.11.0.0 client library added support for transactions; the `KafkaTransactionManager` and other support for transactions has been added.
94
+
The 0.11.0.0 client library added support for transactions.
95
+
The `KafkaTransactionManager` and other support for transactions have been added.
89
96
See <<transactions>> for more information.
90
97
91
98
==== Support for Headers
92
99
93
-
The 0.11.0.0 client library added support for message headers; these can now be mapped to/from `spring-messaging` `MessageHeaders`.
100
+
The 0.11.0.0 client library added support for message headers.
101
+
These can now be mapped to and from `spring-messaging` `MessageHeaders`.
94
102
See <<headers>> for more information.
95
103
96
104
==== Creating Topics
97
105
98
-
The 0.11.0.0 client library provides an `AdminClient` which can be used to create topics.
99
-
The `KafkaAdmin` uses this client to automatically add topics defined as `@Bean` s.
106
+
The 0.11.0.0 client library provides an `AdminClient`, which you can use to create topics.
107
+
The `KafkaAdmin` uses this client to automatically add topics defined as `@Bean` instances.
100
108
101
109
102
-
==== Support for Kafka timestamps
110
+
==== Support for Kafka Timestamps
103
111
104
-
`KafkaTemplate` now supports API to add records with timestamps.
112
+
`KafkaTemplate` now supports an API to add records with timestamps.
105
113
New `KafkaHeaders` have been introduced regarding `timestamp` support.
106
-
Also new `KafkaConditions.timestamp()` and `KafkaMatchers.hasTimestamp()` testing utilities have been added.
107
-
See <<kafka-template>>, <<kafka-listener-annotation>> and <<testing>> for more details.
114
+
Also, new `KafkaConditions.timestamp()` and `KafkaMatchers.hasTimestamp()` testing utilities have been added.
115
+
See <<kafka-template>>, <<kafka-listener-annotation>>, and <<testing>> for more details.
108
116
109
-
==== @KafkaListener Changes
117
+
==== `@KafkaListener` Changes
110
118
111
119
You can now configure a `KafkaListenerErrorHandler` to handle exceptions.
112
120
See <<annotation-error-handling>> for more information.
113
121
114
122
By default, the `@KafkaListener` `id` property is now used as the `group.id` property, overriding the property configured in the consumer factory (if present).
115
123
Further, you can explicitly configure the `groupId` on the annotation.
116
-
Previously, you would have needed a separate container factory (and consumer factory) to use different `group.id` s for listeners.
124
+
Previously, you would have needed a separate container factory (and consumer factory) to use different `group.id` values for listeners.
117
125
To restore the previous behavior of using the factory configured `group.id`, set the `idIsGroup` property on the annotation to `false`.
118
126
119
-
==== @EmbeddedKafka Annotation
127
+
==== `@EmbeddedKafka` Annotation
120
128
121
-
For convenience a test classlevel `@EmbeddedKafka` annotation is provided with the purpose to register `KafkaEmbedded` as a bean.
129
+
For convenience, a test class-level `@EmbeddedKafka` annotation is provided, to register `KafkaEmbedded` as a bean.
122
130
See <<testing>> for more information.
123
131
124
132
==== Kerberos Configuration
@@ -143,15 +151,15 @@ Listeners can be configured to receive the entire batch of messages returned by
143
151
144
152
==== Null Payloads
145
153
146
-
Null payloads are used to "delete" keys when using log compaction.
154
+
Null payloads are used to "`delete`" keys when you use log compaction.
147
155
148
156
==== Initial Offset
149
157
150
158
When explicitly assigning partitions, you can now configure the initial offset relative to the current position for the consumer group, rather than absolute or relative to the current end.
151
159
152
160
==== Seek
153
161
154
-
You can now seek the position of each topic/partition.
155
-
This can be used to set the initial position during initialization when group management is in use and Kafka assigns the partitions.
156
-
You can also seek when an idle container is detected, or at any arbitrary point in your application's execution.
162
+
You can now seek the position of each topic or partition.
163
+
You can use this to set the initial position during initialization when group management is in use and Kafka assigns the partitions.
164
+
You can also seek when an idle container is detected or at any arbitrary point in your application's execution.
0 commit comments