Commit Graph

205 Commits

Author SHA1 Message Date
Matthias J. Sax a15387f34d
KAFKA-9274: Revert deprecation of `retries` for producer and admin clients (#9333)
Reviewer: John Roesler <john@confluent.io>
2020-09-30 12:13:34 -07:00
Chia-Ping Tsai 821c1ac664
KAFKA-10479; Throw exception if users try to update non-reconfigurable configs of existing listeners (#9284)
The previous dynamic configuration validation did not actually compare new configs to original configs as intended, so the expected exception was not thrown.

Reviewers: Ismael Juma <ismael@juma.me.uk>, Rajini Sivaram <rajinisivaram@googlemail.com>, Jason Gustafson <jason@confluent.io>
2020-09-29 12:15:08 -07:00
Matthias J. Sax b351493543
KAFKA-9274: Remove `retries` for global task (#9047)
- part of KIP-572
 - removed the usage of `retries` in `GlobalStateManger`
 - instead of retries the new `task.timeout.ms` config is used

Reviewers: John Roesler <john@confluent.io>, Boyang Chen <boyang@confluent.io>, Guozhang Wang <guozhang@confluent.io>
2020-08-05 14:14:18 -07:00
Jason Gustafson 4e2546ab83
MINOR: Add notes for 2.6 on reassignment tool changes (#9109)
Add some notable changes to the reassignment tool for the 2.6 release.

Reviewers: Randall Hauch <rhauch@gmail.com>
2020-07-31 10:20:34 -07:00
Matthias J. Sax 194c56fce2
KAFKA-9274: Mark `retries` config as deprecated and add new `task.timeout.ms` config (#8864)
- part of KIP-572
 - deprecates producer config `retries` (still in use)
 - deprecates admin config `retries` (still in use)
 - deprecates Kafka Streams config `retries` (will be ignored)
 - adds new Kafka Streams config `task.timeout.ms` (follow up PRs will leverage this new config)

Reviewers: John Roesler <john@confluent.io>, Jason Gustafson <jason@confluent.io>, Randall Hauch <randall@confluent.io>
2020-07-21 12:19:13 -07:00
Rajini Sivaram 9c8f75c4b6
KAFKA-10223; Use NOT_LEADER_OR_FOLLOWER instead of non-retriable REPLICA_NOT_AVAILABLE for consumers (#8979)
Brokers currently return NOT_LEADER_FOR_PARTITION to producers and REPLICA_NOT_AVAILABLE to consumers if a replica is not available on the broker during reassignments. Non-Java clients treat REPLICA_NOT_AVAILABLE as a non-retriable exception, Java consumers handle this error by explicitly matching the error code even though it is not an InvalidMetadataException. This PR renames NOT_LEADER_FOR_PARTITION to NOT_LEADER_OR_FOLLOWER and uses the same error for producers and consumers. This is compatible with both Java and non-Java clients since all clients handle this error code (6) as retriable exception. The PR also makes ReplicaNotAvailableException a subclass of InvalidMetadataException.
    - ALTER_REPLICA_LOG_DIRS continues to return REPLICA_NOT_AVAILABLE. Retained this for compatibility since this request never returned NOT_LEADER_FOR_PARTITION earlier. 
   -  MetadataRequest version 0 also returns REPLICA_NOT_AVAILABLE as topic-level error code for compatibility. Newer versions filter these out and return Errors.NONE, so didn't change this.
   - Partition responses in MetadataRequest return REPLICA_NOT_AVAILABLE to indicate that one of the replicas is not available. Did not change this since NOT_LEADER_FOR_PARTITION is not suitable in this case.

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>, Bob Barrett <bob.barrett@confluent.io>
2020-07-17 20:05:11 +01:00
Badai Aqrandista 50c3012890
KAFKA-9313: Set `use_all_dns_ips` as the new default for `client.dns.lookup` (KIP-602) (#8644)
This applies to the producer, consumer, admin client, connect worker
and inter broker communication.

`ClientDnsLookup.DEFAULT` has been deprecated and a warning
will be logged if it's explicitly set in a client config.

Reviewers: Mickael Maison <mickael.maison@gmail.com>, Ismael Juma <ismael@juma.me.uk>
2020-06-04 06:21:52 -07:00
Nikolay 8b22b81596
KAFKA-9320: Enable TLSv1.3 by default (KIP-573) (#8695)
1. Enables `TLSv1.3` by default with Java 11 or newer.
2. Add unit tests that cover the various TLSv1.2 and TLSv1.3 combinations.
3. Extend `benchmark_test.py` and `replication_test.py` to run with 'TLSv1.2'
or 'TLSv1.3'.

Reviewers: Ismael Juma <ismael@juma.me.uk>
2020-06-02 15:34:43 -07:00
Navinder Pal Singh Brar 4b97e50eea
MINOR: Added doc for KIP-535 and updated it for KIP-562 (#8395)
Reviewers: Boyang Chen <boyang@confluent.io>, Vinoth Chandar <vchandar@confluent.io>, Matthias J. Sax <matthias@confluent.io>
2020-05-26 16:24:00 -07:00
Matthias J. Sax 318063a16a
KAFKA-9466: Update Kafka Streams docs for KIP-447 (#8621)
Reviewers: Boyang Chen <boyang@confluent.io>, Jim Galasyn <jim.galasyn@confluent.io>, Guozhang Wang <guozhang@confluent.io>
2020-05-11 19:11:58 -07:00
Boyang Chen 0520bc6c7c
MINOR: Update docs for KIP-530 and KIP-562 (#8388)
Reviewer: Matthias J. Sax <matthias@confluent.io>
2020-03-30 13:06:54 -07:00
Boyang Chen 4018f5e8b3
KAFKA-9760: Add KIP-447 protocol change to upgrade notes (#8350)
Reviewers: Matthias J. Sax <matthias@confluent.io>, Guozhang Wang <guozhang@confluent.io>
2020-03-26 09:40:49 -07:00
Ron Dagostino d9b8b86bdd KAFKA-9575: Mention ZooKeeper 3.5.7 upgrade
*More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.*

*Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.*

Author: Ron Dagostino <rdagostino@confluent.io>

Reviewers: Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>

Closes #8139 from rondagostino/KAFKA-9575
2020-02-21 18:45:14 +05:30
Rajini Sivaram b1449f683c
MINOR: Add upgrade note about TLSv1 and TLSv1.1 being disabled in 2.5.0 (#8128)
Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
2020-02-17 11:37:15 +00:00
Rajini Sivaram dbeaba5d9e
KAFKA-8847; Deprecate and remove usage of supporting classes in kafka.security.auth (#7966)
Removes references to the old scala Acl classes from kafka.security.auth (Acl, Operation, ResourceType, Resource etc.) and replaces these with the Java API. Only the old SimpleAclAuthorizer, AuthorizerWrapper used to wrap legacy authorizer instances and tests using SimpleAclAuthorizer continue to use the old API. Deprecates the old scala API.

Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
2020-01-17 13:20:34 +00:00
Guozhang Wang 8c21fa837d
MINOR: Add upgrade guide for KAFKA-8421 (#7925)
Co-Authored-By: A. Sophie Blee-Goldman <ableegoldman@gmail.com>

Reviewers: A. Sophie Blee-Goldman <ableegoldman@gmail.com>
2020-01-13 12:40:06 -08:00
Ismael Juma 6dc6f6a60d
KAFKA-9324: Drop support for Scala 2.11 (KIP-531) (#7859)
* Adjust build and documentation.
* Use lambda syntax for SAM types in `core`, `streams-scala` and
`connect-runtime` modules.
* Remove `runnable` and `newThread` from `CoreUtils` as lambda
syntax for SAM types make them unnecessary.
* Remove stale comment in `FunctionsCompatConversions`,
`KGroupedStream`, `KGroupedTable' and `KStream` about Scala 2.11,
the conversions are needed for Scala 2.12 too.
* Deprecate `org.apache.kafka.streams.scala.kstream.Suppressed`
and use `org.apache.kafka.streams.kstream.Suppressed` instead.
* Use `Admin.create` instead of `AdminClient.create`. Static methods
in Java interfaces can be invoked since Scala 2.12. I noticed that
MirrorMaker 2 uses `AdminClient.create`, but I did not change them
as Connectors have restrictions on newer client APIs.
* Improve efficiency in a few `Gauge` implementations by avoiding
unnecessary intermediate collections.
* Remove pointless `Option.apply` in `ZookeeperClient`
`SessionState` metric.
* Fix unused import/variable and other compiler warnings.
* Reduce visibility of some vals/defs.

Reviewers: Manikumar Reddy <manikumar@confluent.io>, Guozhang Wang <wangguoz@gmail.com>, Gwen Shapira <gwen@confluent.io>
2020-01-06 19:51:01 +01:00
Manikumar Reddy 96edabb6b8 MINOR: Update ZooKeeper upgrade notes
Author: Manikumar Reddy <manikumar.reddy@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Magnus Edenhill <magnus@edenhill.se>, Colin Patrick McCabe <cmccabe@apache.org>

Closes #7818 from omkreddy/zk-note
2019-12-20 00:47:12 +05:30
wcarlson5 8b57f6cb3a KAFKA-6049: Add auto-repartitioning for cogroup (#7792)
Follow up to PR #7538 (KIP-150)

Reviewers: Bill Bejeck <bill@confluent.io>, Matthias J. Sax <matthias@confluent.io>
2019-12-13 14:07:21 -08:00
Manikumar Reddy dbce4c12ba MINOR: Update docs about ZooKeeper upgrade issue from 3.4.X to 3.5.6
ZK upgrade from 3.4.X to 3.5.6 fails with "java.io.IOException: No snapshot found" if there are no snapshot files. This was discussed in https://issues.apache.org/jira/browse/ZOOKEEPER-3056

Author: Manikumar Reddy <manikumar.reddy@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>

Closes #7625 from omkreddy/zk-upgrade
2019-11-09 14:30:37 +05:30
Jason Gustafson 4bde9bb3cc
KAFKA-9102; Increase default zk session timeout and replica max lag [KIP-537] (#7596)
This patch increases the default value of `zookeeper.session.timeout` from 6s to 18s and `replica.lag.time.max.ms` from 10s to 30s. This change was documented in KIP-537: https://cwiki.apache.org/confluence/display/KAFKA/KIP-537%3A+Increase+default+zookeeper+session+timeout.

Reviewers: Ismael Juma <ismael@juma.me.uk>
2019-10-25 22:10:01 -07:00
Guozhang Wang 4f682b3c0a
KAFKA-8729: Add upgrade docs for KIP-467 on augmented produce response (#7522)
Add a paragraph explaining the producer caller's expected behavior change on record validation failure scenarios that are improved by KIP-467.

Reviewers: Tu V. Tran <tu@confluent.io>, Jason Gustafson <jason@confluent.io>
2019-10-24 19:45:09 -07:00
Manikumar Reddy f46eb292f5 MINOR: Add upgrade docs for 2.4.0 release
Author: Manikumar Reddy <manikumar.reddy@gmail.com>

Reviewers: Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>

Closes #7530 from omkreddy/2.4-upgrade-docs
2019-10-22 20:51:10 +05:30
A. Sophie Blee-Goldman 3e30bf5439 Explain the separate upgrade paths for consumer groups and Streams (#7516)
Document the upgrade path for the consumer and for Streams (note that they differ significantly).

Needs to be cherry-picked to 2.4

Reviewers: Guozhang Wang <wangguoz@gmail.com>
2019-10-16 16:09:09 -07:00
Guozhang Wang d112ffd8d8
KAFKA-8880: Docs on upgrade-guide (#7385)
Reviewers: Matthias J. Sax <matthias@confluent.io>
2019-09-24 19:32:14 -07:00
Matthias J. Sax 1ae0956892
HOTFIX: fix Kafka Streams upgrade note for broker backward compatibility (#7363)
Reviewer: Guozhang Wang <guozhang@confluent.io>
2019-09-24 09:54:30 -07:00
Stanislav Kozlovski 18d4e57f6e KAFKA-8345 (KIP-455): Controller and KafkaApi changes (part 3/4) (#7128)
Implement the revisions to the controller state machine and reassignment logic needed for KIP-455.

Add the addingReplicas and removingReplicas field to the topics ZNode.

Deprecate the methods initiating a reassignment via direct ZK access in KafkaZkClient.

Add ControllerContextTest, and add some test cases to ReassignPartitionsClusterTest.

Add a note to upgrade.html recommending not initiating reassignments during an upgrade.

Reviewers: Colin P. McCabe <cmccabe@apache.org>, Viktor Somogyi <viktorsomogyi@gmail.com>
2019-09-10 22:19:44 -07:00
A. Sophie Blee-Goldman cf32a1a6a0 KAFKA-8179: Part 4, add CooperativeStickyAssignor (#7130)
Splits the existing StickyAssignor logic into an AbstractStickyAssignor class, which is extended by the existing (eager) StickyAssignor and by the new CooperativeStickyAssignor which supports incremental cooperative rebalancing.

There is no actual change to the logic -- most methods from StickyAssignor were moved to AbstractStickyAssignor to be shared with CooperativeStickyAssignor, and the abstract MemberData memberData(Subscription) method converts the Subscription to the embedded list of owned partitions for each assignor.

The "generation" logic is left in, however this is always Optional.empty() for the CooperativeStickyAssignor as onPartitionsLost should always be called when a generation is missed.

Reviewers: Jason Gustafson <jason@confluent.io>, Guozhang Wang <wangguoz@gmail.com>
2019-08-27 14:41:33 -07:00
Justine Olshan 88087e91dd MINOR: Clean up the sticky partitioner code a bit (#7151)
Reviewers: Colin P. McCabe <cmccabe@apache.org>, Lucas Bradstreet <lucasbradstreet@gmail.com>
2019-08-12 14:17:28 -07:00
Ismael Juma 22d4ccd8ac
MINOR: Update docs to reflect the ZK 3.5.5 upgrade (#7149)
Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
2019-08-02 06:09:51 -07:00
A. Sophie Blee-Goldman 6fbac3cfa8 KAFKA-8179: PartitionAssignorAdapter (#7110)
Follow up to new PartitionAssignor interface merged in 7108 is merged

Adds a PartitionAssignorAdapter class to maintain backwards compatibility

Reviewers: Boyang Chen <boyang@confluent.io>, Jason Gustafson <jason@confluent.io>, Guozhang Wang <wangguoz@gmail.com>
2019-07-31 13:53:38 -07:00
Jason Gustafson 53b10a37a4
MINOR: Fix api exception single argument constructor usage (#6956)
Api exception types usually have a single argument constructor which accepts the exception message. However, some types actually use this constructor to initialize a field. This inconsistency has led to some cases where exception messages were being incorrectly passed to these constructors and interpreted incorrectly. For example, this leads to confusing messages like the following in the log when we hit a GROUP_MAX_SIZE_REACHED error:
```
Attempt to join group failed due to fatal error: Consumer group The consumer group has reached its max size. already has the configured ...
```
This patch fixes the problem by changing these constructors so that the exception message is provided consistently. This affected `GroupAuthorizationException`, `TopicAuthorizationException`, and `GroupMaxSizeReachedException`. 

Reviewers: Stanislav Kozlovski <stanislav_kozlovski@outlook.com>, Kamal Chandraprakash <kamal.chandraprakash@gmail.com>, Ismael Juma <ismael@juma.me.uk>
2019-07-17 09:42:57 -07:00
Kamal Chandraprakash 11337afecb MINOR: Fix static membership documentation link in upgrade notes (#7001)
Reviewers: Jason Gustafson <jason@confluent.io>
2019-07-03 11:19:50 -07:00
Colin Patrick McCabe f74cedb985
MINOR: add upgrade text (#7013)
Reviewers: David Arthur <mumrah@gmail.com>
2019-06-28 14:50:37 -07:00
Konstantine Karantasis c6ddd31887 MINOR: Update docs for KIP-415 (#6958)
Update docs with KIP-415 details for incremental cooperative rebalancing

Author: Konstantine Karantasis <konstantine@confluent.io>
Reviewer: Randall Hauch <rhauch@gmail.com>
2019-06-17 21:53:20 -07:00
Almog Gavra 8e161580b8 KAFKA-8305; Support default partitions & replication factor in AdminClient#createTopic (KIP-464) (#6728)
This commit makes three changes:
- Adds a constructor for NewTopic(String, Optional<Integer>, Optional<Short>)
which allows users to specify Optional.empty() for numPartitions or
replicationFactor in order to use the broker default.
- Changes AdminManager to accept -1 as valid options for replication
factor and numPartitions (resolving to broker defaults).
- Makes --partitions and --replication-factor optional arguments when creating
topics using kafka-topics.sh.
- Adds a dependency on scalaJava8Compat library to make it simpler to
convert Scala Option to Java Optional

Reviewers: Ismael Juma <ismael@juma.me.uk>, Ryanne Dolan <ryannedolan@gmail.com>, Jason Gustafson <jason@confluent.io>
2019-06-05 14:10:00 -07:00
José Armando García Sancio 121308cc7a KAFKA-8286; Generalized Leader Election Admin RPC (KIP-460) (#6686)
Implements KIP-460: https://cwiki.apache.org/confluence/display/KAFKA/KIP-460%3A+Admin+Leader+Election+RPC.

Reviewers: Jun Rao <junrao@gmail.com>, Jason Gustafson <jason@confluent.io>
2019-05-29 10:44:52 -07:00
Boyang Chen 27943e3987 KAFKA-8219: add doc changes for static membership release (#6790)
* add doc changes for static membership release

* address comments

* address comments for a separate page

* address Matthias' comment
2019-05-27 14:25:47 -07:00
Matthias J. Sax 7df79e1508
MINOR: add Kafka Streams upgrade notes for 2.3 release (#6758)
Reviewers: A. Sophie Blee-Goldman <sophie@confluent.io>, John Roesler <john@confluent.io>, Bill Bejeck <bill@confluent.io>
2019-05-23 23:19:12 -07:00
Matthias J. Sax f47b8493bc
MINOR: Add 2.2.0 upgrade instructions (#6501)
Reviewers: Jason Gustafson <jason@confluent.io>
2019-03-26 09:41:29 -07:00
Matthias J. Sax 82615256ff MINOR: add MacOS requirement to Streams docs
*More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.*

*Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.*

Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Bill Bejeck

Closes #6490 from mjsax/minor-streams-docs-rocksdb
2019-03-23 15:48:24 -07:00
Viktor Somogyi 489a6e1674 MINOR: Fix line break issue in upgrade notes (#6320)
Reviewers: Matthias J. Sax <matthias@confluent.io>
2019-02-25 18:20:02 -08:00
Viktor Somogyi-Vass 776041db11 KAFKA-7804: Update docs for topic-command related KIP-377
This PR adds a upgrade notes and changes examples to use the bootstrap-server.

Author: Viktor Somogyi-Vass <viktorsomogyi@gmail.com>

Reviewers: Srinivas <srinivas96alluri@gmail.com>, Manikumar Reddy <manikumar.reddy@gmail.com>

Closes #6118 from viktorsomogyi/topiccommand-adminclient-doc
2019-02-04 13:46:33 -08:00
hejiefang ffd6f2a2e8 MINOR: Fix doc format in upgrade notes
Author: hejiefang <he.jiefang@zte.com.cn>

Reviewers: Srinivas <srinivas96alluri@gmail.com>, Manikumar Reddy <manikumar.reddy@gmail.com>

Closes #6076 from hejiefang/modifynotable
2019-01-02 19:30:51 +05:30
Vahid Hashemian c3e7d6252c KAFKA-6774; Improve the default group id behavior in KafkaConsumer (KIP-289) (#5877)
Improve the default group id behavior by:
* changing the default consumer group to null, where no offset commit or fetch, or group management operations are allowed
* deprecating the use of empty (`""`) consumer group on the client

Reviewers: Jason Gustafson <jason@confluent.io>
2018-11-16 00:58:56 -08:00
Jason Gustafson 63889b36e5 KAFKA-7481; Add upgrade/downgrade notes for 2.1.x
We seemed to be missing the usual rolling upgrade instructions so I've added them and emphasized the impact for downgrades after bumping the inter-broker protocol version.

Author: Jason Gustafson <jason@confluent.io>

Reviewers: Dong Lin <lindong28@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #5857 from hachikuji/KAFKA-7481
2018-11-06 13:56:33 -08:00
Viktor Somogyi 262bb006d5 MINOR: add upgrade note for KIP-336
Author: Viktor Somogyi <viktorsomogyi@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Andras Katona <41361962+akatona84@users.noreply.github.com>, Dong Lin <lindong28@gmail.com>

Closes #5685 from viktorsomogyi/upgrade-notes-for-serializer-consolidation
2018-10-25 09:43:39 -07:00
Jason Gustafson 3f7e4fb8ac MINOR: Add a note about Zstandard compression in the upgrade docs
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Dong Lin <lindong28@gmail.com>

Closes #5817 from hachikuji/add-zstandard-upgrade-notes
2018-10-18 11:13:38 -07:00
Bill Bejeck 763b72c9a5 MINOR: Doc changes for KIP-324 (#5788)
Reviewers: Matthias J. Sax <matthias@confluent.io>, John Roesler <john@confluent.io>
2018-10-15 18:55:39 -07:00
Ismael Juma 6a1bb547c0 KAFKA-7372: Upgrade Jetty for preliminary Java 11 and TLS 1.3 support (#5600)
"Jetty 9.4.12 includes compatibility for JDK 11. Additionally, TLS 1.3 support has been implemented. While full functionality for new JDK features is not yet supported, this release has been built and tested for compatibility with the latest releases from Oracle."

http://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00124.html

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>
2018-09-03 15:21:20 +01:00