Commit Graph

397 Commits

Author SHA1 Message Date
Ismael Juma da8f390c45 MINOR: Update upgrade notes for 4.0.0 (#18960)
Details:
1. Upgrades to 4.0.x are only supported from 3.3.x and for kraft mode clusters
2. Add rolling upgrade instructions for 4.0.x
3. Clarify the message for zk to kraft migrations
4. Remove all the upgrade instructions for older versions (they can still be found in the upgrade notes for older releases)

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, David Jacot <djacot@confluent.io>
2025-02-23 13:18:57 -08:00
Kaushik Raina eacdb09cd7 Add TransactionAbortableException and Timeout Exception handling instruction in docs (#18942)
Add instruction for handing TransactionAbortableException and TimeoutException at application side.

Reviewers: Justine Olshan <jolshan@confluent.io>
2025-02-19 09:16:52 -08:00
David Jacot 6f1e1884e3 MINOR: Tweak default group coordinator config & upgrade notes (#18948)
This patch changes the default value of `group.coordinator.threads` to `4` and sets it priority to `HIGH`. This change makes it consistent with how we handle `num.network.threads` and `num.io.threads`. The patch also tweaks the upgrade notes.

Reviewers: Ismael Juma <ismael@juma.me.uk>
2025-02-18 20:06:24 +01:00
Luke Chen 10c849f55d MINOR: add docs for "org.apache.kafka.sasl.oauthbearer.allowed.urls" (#18938)
add docs for "org.apache.kafka.sasl.oauthbearer.allowed.urls"

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Manikumar Reddy <manikumar.reddy@gmail.com>
2025-02-18 16:48:51 +08:00
Justine Olshan e6609d3acd MINOR: Add release notes for Transactions Server Side Defense (KIP-890) (#18896)
Add some notes about upgrading and performance

Reviewers: David Jacot <djacot@confluent.io>
2025-02-14 08:42:02 -08:00
Lianet Magrans f5f58e88f7 KAFKA-17298: Update upgrade notes for 4.0 KIP-848 (#18756)
Reviewers: David Jacot <djacot@confluent.io>
2025-02-13 11:52:53 -05:00
PoAn Yang 5bacdbeb1c MINOR: add missing <li> to upgrade.html (#18817)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-02-07 00:11:24 +08:00
Ming-Yen Chung 563d729a57 KAFKA-18674 Document the incompatible changes in parsing --bootstrap-server (#18751)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-02-03 13:57:54 +08:00
TengYao Chi ac87155ba4 KAFKA-18229: Move configs out of "kraft" directory (#18389)
Reviewers: Mickael Maison <mickael.maison@gmail.com>, Ismael Juma <ismael@juma.me.uk>, José Armando García Sancio <jsancio@apache.org>
2025-01-22 15:48:44 +01:00
Jason Taylor 414dfa32b9 KAFKA-16368: Add a new constraint for segment.bytes to min 1MB for KIP-1030 (#18140)
Reviewers: Divij Vaidya <diviv@amazon.com>
2025-01-16 16:10:48 +01:00
Jason Taylor caf0b67fbb KAFKA-16368: Update defaults for LOG_MESSAGE_TIMESTAMP_AFTER_MAX_MS_DEFAULT and NUM_RECOVERY_THREADS_PER_DATA_DIR_CONFIG (#18106)
Reviewers: Divij Vaidya <diviv@amazon.com>
2025-01-16 15:35:47 +01:00
Jason Taylor beda2f3917 KAFKA-16368: Update default linger.ms to 5ms for KIP-1030 (#18080)
Reviewers: Ismael Juma <ismael@juma.me.uk>, Divij Vaidya <diviv@amazon.com>
2025-01-16 10:52:13 +01:00
Ken Huang e206d51591 KAFKA-18364 add document to show the changes of metrics and configs after removing zookeeper (#18365)
This patch introduces a new page to document the configs and metrics that have been removed in the transition to 4.0. While these removed items lack a formal deprecation cycle as they are part of KIP-500, KIP-500 itself does not provide an exhaustive list of all impacted configs and metrics. Therefore, this new page aims to assist Kafka users in understanding the specific configs and metrics that have been removed in the 4.0 release.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-01-16 05:02:23 +08:00
Matthias J. Sax 803509785c MINOR: add KafkaStreams 4.0 information to top-level upgrade section (#18543)
Reviewers: Bruno Cadonna <bruno@confluent.io>, Alieh Saeedi <asaeedi@confluent.io>
2025-01-15 09:56:42 -08:00
Matthias J. Sax ee4e2c713f KAFKA-17825: Update docs for ByteBufferDeserializer changes in 3.6 release (#18466)
KIP-863 introduced a change to ByteBufferDeserializer which is not
properly documented, but should be called out because it could surface
bugs in application code which using ByteBufferDeserializer.

Reviewers:  Lianet Magrans <lmagrans@confluent.io>, Kirk True <ktrue@confluent.io>, Chia-Ping Tsai <chia7712@gmail.com>
2025-01-10 15:34:58 -08:00
TengYao Chi 79271f3401 MINOR: Remove PaswwordEncoderConfig related entries from upgrade.html (#18362)
Reviewers: Ken Huang <s7133700@gmail.com>, TaiJuWu <tjwu1217@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-01-01 00:06:54 +08:00
TengYao Chi 3575b41ba6 KAFKA-18361 Remove PasswordEncoderConfigs (#18347)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-31 00:18:57 +08:00
TengYao Chi 98d4c5bceb MINOR: log4j2 upgrade follow-up (#18290)
Reviewers: PoAn Yang <payang@apache.org>, Chia-Ping Tsai <chia7712@gmail.com>
2024-12-30 20:47:57 +08:00
PoAn Yang 0a6028d348 KAFKA-18295 Remove deprecated function Partitioner#onNewBatch (#18282)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-27 18:40:45 +08:00
xijiu 67b6426660 KAFKA-18348 Remove the deprecated MockConsumer#setException (#18317)
Reviewers: TengYao Chi <kitingiao@gmail.com>, TaiJuWu <tjwu1217@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2024-12-27 12:31:57 +08:00
Chung, Ming-Yen b0fb35c5aa KAFKA-18093 Remove deprecated DeleteTopicsResult#values (#18250)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-25 14:46:42 +08:00
Logan Zhu 750af8f065 KAFKA-18290 Remove deprecated methods of FeatureUpdate (#18246)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-24 14:53:58 +08:00
Nick Guo 20cf548e88 KAFKA-18289 Remove deprecated methods of DescribeTopicsResult (#18255)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-24 01:49:00 +08:00
Nick Guo 916caccbf6 KAFKA-18291 Remove deprecated methods of ListConsumerGroupOffsetsOptions (#18265)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-24 01:38:17 +08:00
Ismael Juma 1a4d08ccfa MINOR: Add release note for Java 17 requirement (#18302)
Also remove confusing comment related to connect & Java 17 from build.gradle.
I also updated KIP-1013 to note the implications of KIP-1032.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-22 19:39:16 -08:00
PoAn Yang df43d62da8 KAFKA-17393: Remove log.message.format.version/message.format.version (KIP-724) (#18267)
Based on [KIP-724](https://cwiki.apache.org/confluence/display/KAFKA/KIP-724%3A+Drop+support+for+message+formats+v0+and+v1), the `log.message.format.version` and `message.format.version` can be removed in 4.0.

These configs effectively a no-op with inter-broker protocol version 3.0 or higher
since Apache Kafka 3.0, so the impact should be minimal.

Reviewers: Ismael Juma <ismael@juma.me.uk>
2024-12-21 21:30:17 -08:00
Ismael Juma a0f9e319c7
KAFKA-18269: Remove deprecated protocol APIs support (KIP-896, KIP-724) (#18291)
Included in this change:
1. Remove deprecated protocol api versions from json files.
3. Remove fields that are no longer used from json files (affects ListOffsets, OffsetCommit, DescribeConfigs).
4. Remove record down-conversion support from KafkaApis.
5. No longer return `Errors.UNSUPPORTED_COMPRESSION_TYPE` on the fetch path[1].
6. Deprecate `TopicConfig. MESSAGE_DOWNCONVERSION_ENABLE_CONFIG` and made the relevant
configs (`message.downconversion.enable` and `log.message.downcoversion.enable`) no-ops since
down-conversion is no longer supported. It was an oversight not to deprecate this via KIP-724.
7. Fix `shouldRetainsBufferReference` to handle null request schemas for a given version.
8. Simplify producer logic since it only supports the v2 record format now.
9. Fix tests so they don't exercise protocol api versions that have been removed.
10. Add upgrade note.

Testing:
1. System tests have a lot of failures, but those tests fail for trunk too and I didn't see any issues specific to this change - it's hard to be sure given the number of failing tests, but let's not block on that given the other testing that has been done (see below).
3. Java producers and consumers with version 0.9-0.10.1 don't have api versions support and hence they fail in an ungraceful manner: the broker disconnects and the clients reconnect until the relevant timeout is triggered.
4. Same thing seems to happen for the console producer 0.10.2 although it's unclear why since api versions should be supported. I will look into this separately, it's unlikely to be related to this PR.
5. Console consumer 0.10.2 fails with the expected error and a reasonable message[2].
6. Console producer and consumer 0.11.0 works fine, newer versions should naturally also work fine.
7. kcat 1.5.0 (based on librdkafka 1.1.0) produce and consume fail with a reasonable message[3][4].
8. kcat 1.6.0-1.7.0 (based on librdkafka 1.5.0 and 1.7.0 respectively) consume fails with a reasonable message[5].
9. kcat 1.6.0-1.7.0 produce works fine.
10. kcat 1.7.1  (based on librdkafka 1.8.2) works fine for consumer and produce.
11. confluent-go-client (librdkafka based) 1.8.2 works fine for consumer and produce.
12. I will test more clients, but I don't think we need to block the PR on that.

Note that this also completes part of KIP-724: produce v2 and lower as well as fetch v3 and lower are no longer supported.

Future PRs will remove conditional code that is no longer needed (some of that has been done in KafkaApis,
but only what was required due to the schema changes). We can probably do that in master only as it does
not change behavior.

Note that I did not touch `ignorable` fields even though some of them could have been
changed. The reasoning is that this could result in incompatible changes for clients
that use new protocol versions without setting such fields _if_ we don't manually
validate their presence. I will file a JIRA ticket to look into this carefully for each
case (i.e. if we do validate their presence for the appropriate versions, we can
set them to ignorable=false in the json file).

[1] We would return this error if a fetch < v10 was used and the compression topic config was set
to zstd, but we would not do the same for the case where zstd was compressed at the producer
level (the most common case). Since there is no efficient way to do the check for the common
case, I made it consistent for both by having no checks.
[2] ```org.apache.kafka.common.errors.UnsupportedVersionException: The broker is too new to support JOIN_GROUP version 1```
[3]```METADATA|rdkafka#producer-1| [thrd:main]: localhost:9092/bootstrap: Metadata request failed: connected: Local: Required feature not supported by broker (0ms): Permanent```
[4]```METADATA|rdkafka#consumer-1| [thrd:main]: localhost:9092/bootstrap: Metadata request failed: connected: Local: Required feature not supported by broker (0ms): Permanent```
[5] `ERROR: Topic test-topic [0] error: Failed to query logical offset END: Local: Required feature not supported by broker`

Cherry-pick was clean, minor changes required to LogOffsetTest due to a commit that is in master, but not 4.0.

Reviewers: David Arthur <mumrah@gmail.com>
2024-12-21 00:08:33 -08:00
PoAn Yang e8060720c2 KAFKA-18262 Remove DefaultPartitioner and UniformStickyPartitioner (#18204)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-20 15:34:17 +08:00
ClarkChen df82240096 KAFKA-18292 Remove deprecated methods of UpdateFeaturesOptions (#18245)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-20 11:27:13 +08:00
Nick Guo 623caea77b KAFKA-18294 Remove deprecated SourceTask#commitRecord (#18260)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-19 01:06:58 +08:00
Nick Guo 5a6e1204dd KAFKA-18264 Remove NotLeaderForPartitionException (#18211)
Reviewers: Yung <yungyung7654321@gmail.com>, Mickael Maison <mickael.maison@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2024-12-19 00:56:46 +08:00
Chung, Ming-Yen 8a30899a3e KAFKA-18094 Remove deprecated TopicListing(String, Boolean) (#18248)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-18 18:45:53 +08:00
Xuan-Zhang Gong d90ad2a7bf KAFKA-18293 Remove `org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerLoginCallbackHandler` and `org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerValidatorCallbackHandler` (#18244)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-18 14:48:27 +08:00
Jason Taylor 3b1bd3812e
KAFKA-16368: Update remote.log.manager.* default thread pool values for KIP-1030 (#18137)
Reviewers: Divij Vaidya <diviv@amazon.com>
2024-12-12 23:51:26 +01:00
Mickael Maison 08aa8ec3bf
KAFKA-18178 Remove ZkSecurityMigrator (#18092)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-10 16:00:08 +08:00
Patrik Marton 0bbed823e8
KAFKA-17200: Allow the replication of user internal topics (#17815)
Reviewers: Viktor Somogyi-Vass <viktorsomogyi@gmail.com>
2024-12-06 15:23:58 +01:00
Andrew Schofield e7d986e48c
KAFKA-17550: DescribeGroups v6 exploitation (#17706)
This PR introduces the DescribeGroups v6 API as part of KIP-1043. This adds an error message for the described groups so that it is possible to get some context on the error. It also changes the behaviour for when the group ID cannot be found but returning error code GROUP_ID_NOT_FOUND rather than NONE.

Reviewers: David Jacot <djacot@confluent.io>
2024-12-05 23:12:24 -08:00
Nick Guo 970d8930ac
KAFKA-18159 Remove onPartitionsRevoked and onPartitionsAssigned from SinkTask (#18049)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-06 04:28:34 +08:00
PoAn Yang 8e6ea2c1d6
MINOR: fix unmatched tag in upgrade.html (#18032)
Signed-off-by: PoAn Yang <payang@apache.org>

Reviewers: Apoorv Mittal <amittal@confluent.io>, Josep Prat <josep.prat@aiven.io>
2024-12-04 11:18:47 +01:00
TengYao Chi 6fd951a9c0
KAFKA-17610 Drop alterConfigs (#18002)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-12-02 23:26:06 +08:00
dengziming 615f1a0bf9
KAFKA-16181: Use incrementalAlterConfigs when updating broker configs by kafka-configs.sh (#15304)
This PR implement KIP-1011, kafka-configs.sh now uses incrementalAlterConfigs API to alter broker configurations instead of the deprecated alterConfigs API, and it will fall directly if the broker doesn't support incrementalAlterConfigs.

Reviewers: David Jacot <djacot@confluent.io>, OmniaGM <o.g.h.ibrahim@gmail.com>.
2024-12-01 18:32:02 +08:00
HYUNSANG HAN (한현상, Travis) 700bdd5fee
KAFKA-17997 Remove deprecated config log.message.timestamp.difference.max.ms (#17928)
Reviewers: Divij Vaidya <diviv@amazon.com>, Chia-Ping Tsai <chia7712@gmail.com>
2024-11-29 03:15:46 +08:00
Chia-Chuan Yu c446e799be
KAFKA-17010 Remove `DescribeLogDirsResponse#LogDirInfo`, `DescribeLogDirsResponse#ReplicaInfo`, and `DescribeLogDirsResult#all` (#17953)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-11-28 04:42:34 +08:00
ClarkChen 54843e6e1e
KAFKA-18077 Remove deprecated JmxReporter(String) (#17923)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-11-25 21:54:50 +08:00
Nick Guo 637b22fb53
MINOR: add a note to the upgrade.html about the removal of sendOffsetsToTransaction (#17910)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-11-23 22:53:43 +08:00
Joao Pedro Fonseca Dantas 6c59e657c0
KAFKA-17640 Document Java 23 support and include release note (#17403)
Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2024-11-21 22:29:10 +08:00
TengYao Chi e1dcd383bc
KAFKA-17927 Disallow users to configure `max.in.flight.requests.per.connection` bigger than 5 (#17717)
Reviewers: PoAn Yang <payang@apache.org>, Chia-Ping Tsai <chia7712@gmail.com>
2024-11-18 14:01:16 +08:00
Kamal Chandraprakash 6dddabb359
KAFKA-16780: Document the new RemoteLogMetadataManager#nextSegmentWithTxnIndex API in upgrade notes. (#17735)
Reviewers: Divij Vaidya <diviv@amazon.com>
2024-11-12 23:15:12 +05:30
Yung b7e69ebf5c
KAFKA-17924: Remove `bufferpool-wait-time-total`, `io-waittime-total`, and `iotime-total` (#17697)
These metrics were deprecated in KIP-773 and are being removed in Kafka 4.0.

Reviewers:  Chia-Ping Tsai <chia7712@gmail.com>, Divij Vaidya <diviv@amazon.com>
2024-11-06 08:46:28 +01:00
Luke Chen 67e2a0ae6f
MINOR: Improve the KIP-853 documentation (#17598)
In docs/ops.html, add a section discussion the difference between static and dynamic quorums. This section also discusses how to find out which quorum type you have. Also discuss the current limitations, such as the inability to transition from static quorums to dynamic.

Add a brief section to docs/upgrade.html discussing controller membership change.

Co-authored-by: Federico Valeri <fedevaleri@gmail.com>, Colin P. McCabe <cmccabe@apache.org>
Reviewers: Justine Olshan <jolshan@confluent.io>
2024-10-30 09:41:19 -07:00