Commit Graph

428 Commits

Author SHA1 Message Date
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
Manikumar Reddy O 028e80204d KAFKA-6835: Enable topic unclean leader election to be enabled without controller change (#4957)
Reviewers: Jun Rao <junrao@gmail.com>
2018-08-20 09:48:13 -07:00
Vahid Hashemian e6fd99dc62 KAFKA-5638; Improve the Required ACL of ListGroups API (KIP-231) (#5352)
Reviewers: Manikumar Reddy O <manikumar.reddy@gmail.com>, Jason Gustafson <jason@confluent.io>
2018-08-12 23:59:31 -07:00
Jason Gustafson c3e7c0bcb2
MINOR: Producers should set delivery timeout instead of retries (#5425)
Use delivery timeout instead of retries when possible and remove various TODOs associated with completion of KIP-91.

Reviewers: Ismael Juma <ismael@juma.me.uk>, Guozhang Wang <wangguoz@gmail.com>
2018-08-01 11:04:17 -07:00
Yu Yang 7fc7136ffd KAFKA-5886; Introduce delivery.timeout.ms producer config (KIP-91) (#5270)
Co-authored-by: Sumant Tambe <sutambe@yahoo.com>
Co-authored-by: Yu Yang <yuyang@pinterest.com>

Reviewers: Ted Yu <yuzhihong@gmail.com>, Apurva Mehta <apurva@confluent.io>, Jason Gustafson <jason@confluent.io>
2018-07-26 09:13:50 -07:00
Rajini Sivaram 4b60ed3247
KAFKA-7193: Use ZooKeeper IP address in streams tests to avoid timeouts (#5414)
ZooKeeper client from version 3.4.13 doesn't handle connections to localhost very well. If ZooKeeper is started on 127.0.0.1 on a machine that has both ipv4 and ipv6 and a client is created using localhost rather than the IP address in the connection string, ZooKeeper client attempts to connect to ipv4 or ipv6 randomly with a fixed one second backoff if connection fails. Use 127.0.0.1 instead of localhost in streams tests to avoid intermittent test failures due to ZK client connection timeouts if ipv6 is chosen in consecutive address selections. Also add note to upgrade docs for 2.0.0.

Reviewers: Ismael Juma <github@juma.me.uk>, Matthias J. Sax <matthias@confluent.io>
2018-07-23 19:10:33 +01:00
Matthias J. Sax c5a4d5cb91 MINOR: fix upgrade docs for Streams (#5394)
Reviewers: Guozhang Wang <guozhang@confluent.io>, Rajini Sivaram <rajini@confluent.io>
2018-07-20 11:01:32 -07:00
Matthias J. Sax 03e788b29b MINOR: improve docs version numbers (#5372)
Reviewer: Guozhang Wang <guozhang@confluent.io>
2018-07-18 13:52:44 -07:00
Rajini Sivaram 359eb4e083
MINOR: Remove references to version 1.2 in docs (#5386) 2018-07-18 18:07:59 +01:00
Vahid Hashemian 9bc9a37e50 MINOR: KIP-211 Follow-up (#5272)
Updates the description of `offsets.retention.minutes` config, and fixes an upgrade note.
2018-06-26 07:57:28 -07:00
Vahid Hashemian 418a91b5d4 KAFKA-4682; Revise expiration semantics of consumer group offsets (KIP-211 - Part 1) (#4896)
This patch contains the improved offset expiration semantics proposed in KIP-211. Committed offsets will not be expired as long as a group is active. Once all members have left the group, then offsets will be expired after the timeout configured by `offsets.retention.minutes`. Note that the optimization for early expiration of unsubscribed topics will be implemented in a separate patch.
2018-06-21 17:19:24 -07:00
Ismael Juma cc4dce94af
KAFKA-2983: Remove Scala consumers and related code (#5230)
- Removed Scala consumers (`SimpleConsumer` and `ZooKeeperConsumerConnector`)
and their tests.
- Removed Scala request/response/message classes.
- Removed any mention of new consumer or new producer in the code
with the exception of MirrorMaker where the new.consumer option was
never deprecated so we have to keep it for now. The non-code
documentation has not been updated either, that will be done
separately.
- Removed a number of tools that only made sense in the context
of the Scala consumers (see upgrade notes).
- Updated some tools that worked with both Scala and Java consumers
so that they only support the latter (see upgrade notes).
- Removed `BaseConsumer` and related classes apart from `BaseRecord`
which is used in `MirrorMakerMessageHandler`. The latter is a pluggable
interface so effectively public API.
- Removed `ZkUtils` methods that were only used by the old consumers.
- Removed `ZkUtils.registerBroker` and `ZKCheckedEphemeral` since
the broker now uses the methods in `KafkaZkClient` and no-one else
should be using that method.
- Updated system tests so that they don't use the Scala consumers except
for multi-version tests.
- Updated LogDirFailureTest so that the consumer offsets topic would
continue to be available after all the failures. This was necessary for it
to work with the Java consumer.
- Some multi-version system tests had not been updated to include
recently released Kafka versions, fixed it.
- Updated findBugs and checkstyle configs not to refer to deleted
classes and packages.

Reviewers: Dong Lin <lindong28@gmail.com>, Manikumar Reddy <manikumar.reddy@gmail.com>
2018-06-19 07:32:54 -07:00
Rajini Sivaram d504e85011
KAFKA-6805: Enable broker configs to be stored in ZK before broker start (#4898)
Support configuration of dynamic broker configs in ZooKeeper before starting brokers using ConfigCommand. This will allow password configs to be encrypted and stored in ZooKeeper, without requiring clear passwords in server.properties to bootstrap the broker first.

Reviewers: Jason Gustafson <jason@confluent.io>
2018-06-18 18:28:08 +01:00
Dhruvil Shah a8c17e36c3 MINOR: Fix chunked down-conversion behavior when no valid batch exists after conversion (#5173)
We might decide to drop certain message batches during down-conversion because older clients might not be able to interpret them. One such example is control batches which are typically removed by the broker if down-conversion to V0 or V1 is required. This patch makes sure the chunked down-conversion implementation is able to handle such cases.
2018-06-14 23:00:33 -07:00
Jason Gustafson 443091b844
KAFKA-7050; Decrease default consumer request timeout to 30s (#5203)
This patch changes the default `request.timeout.ms` of the consumer to 30 seconds. Additionally, it adds logic to `NetworkClient` and related to components to support timeouts at the request level. We use this to handle the special case of the JoinGroup request, which may block for as long as the value configured by `max.poll.interval.ms`.

Reviewers: Ismael Juma <ismael@juma.me.uk>, Guozhang Wang <guozhang@confluent.io>
2018-06-13 16:21:30 -07:00
Dhruvil Shah 53ca52f855 KAFKA-6979; Add `default.api.timeout.ms` to KafkaConsumer (KIP-266) (#5122)
Adds a configuration that specifies the default timeout for KafkaConsumer APIs that could block. This was introduced in KIP-266.

Reviewers: Satish Duggana <satish.duggana@gmail.com>, Jason Gustafson <jason@confluent.io>
2018-06-12 16:29:50 -07:00
Andy Coates a592402512 KAFKA-7007: Use JSON for /kafka-acl-extended-changes path (#5161)
Keep Literal ACLs on the old paths, using the old formats, to maintain backwards compatibility.
Have Prefixed, and any latter types, go on new paths, using JSON, (old brokers are not aware of them)
Add checks to reject any adminClient requests to add prefixed acls before the cluster is fully upgraded.

Colin Patrick McCabe <colin@cmccabe.xyz>, Jun Rao <junrao@gmail.com>
2018-06-12 19:07:10 -03:00
Dong Lin 4580d9f16a MINOR: Remove deprecated per-partition lag metrics
It takes O(n^2) time to instantiate a mbean with n attributes which can be very slow if the number of attributes of this mbean is large. This PR removes metrics whose number of attributes can grow with the number of partitions in the cluster to fix the performance issue. These metrics have already been marked for removal in 2.0 by KIP-225.

Author: Dong Lin <lindong28@gmail.com>

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

Closes #5172 from lindong28/remove-deprecated-metrics
2018-06-11 23:32:30 -07:00
Andy Coates b3aa655a70 KAFKA-6841: Support Prefixed ACLs (KIP-290) (#5117)
Reviewers: Colin Patrick McCabe <colin@cmccabe.xyz>, Jun Rao <junrao@gmail.com>

Co-authored-by: Piyush Vijay <pvijay@apple.com>
Co-authored-by: Andy Coates <big-andy-coates@users.noreply.github.com>
2018-06-06 07:22:57 -07:00
Edoardo Comar 0c035c46b4 KAFKA-6726: Fine Grained ACL for CreateTopics (KIP-277) (#4795)
- CreateTopicsRequest now requires Create auth on Topic resource
or Create on Cluster resource.
- AclCommand --producer option adjusted
- Existing unit and Integration tests adjusted accordingly and
new tests added.

Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Co-authored-by: Edoardo Comar <ecomar@uk.ibm.com>
Co-authored-by: Mickael Maison <mickael.maison@gmail.com>
2018-06-06 03:36:52 -07:00
Paolo Patierno be8808dd4b KAFKA-5588: Remove deprecated --new-consumer tools option (#5097)
Reviewers: Viktor Somogyi <viktorsomogyi@gmail.com>, Vahid Hashemian <vahidhashemian@us.ibm.com>, Manikumar Reddy <manikumar.reddy@gmail.com>, Ismael Juma <ismael@juma.me.uk>
2018-06-05 20:28:03 -07:00
Rajini Sivaram 9df3872fbd KAFKA-3665: Enable TLS hostname verification by default (KIP-294) (#4956)
Make HTTPS the default ssl.endpoint.identification.algorithm.

Reviewers: Ismael Juma <ismael@juma.me.uk>
2018-06-05 04:08:13 -07:00
Manikumar Reddy O 202ab22b98 KAFKA-5523: Remove ReplayLogProducer tool (#5092)
Reviewers: Ismael Juma <ismael@juma.me.uk>
2018-06-03 01:52:11 -07:00
Vahid Hashemian 0cacbcf30e MINOR: Remove usages of JavaConversions and fix some typos (#5115)
Reviewers: Ismael Juma <ismael@juma.me.uk>
2018-06-02 23:45:44 -07:00
Vahid Hashemian 341d5db260 KAFKA-6955: Use Java AdminClient in DeleteRecordsCommand (#5088)
- Removed internal kafka.admin.AdminClient.deleteRecordsBefore since it's
no longer used.
- Removed redundant tests and rewrote non redundant ones to use the Java
AdminClient.

Reviewers: Viktor Somogyi <viktor.somogyi@cloudera.com>, Manikumar Reddy <manikumar.reddy@gmail.com>, Ismael Juma <ismael@juma.me.uk>
2018-06-02 12:41:55 -07:00
Jason Gustafson 3683d475ed
MINOR: Follow-up improvements for KIP-266 (#5084)
This patch contains a few follow-up improvements/cleanup for KIP-266:

- Add upgrade notes
- Add missing `commitSync(Duration)` API
- Improve timeout messages and fix some naming inconsistencies
- Various small cleanups

Reviewers: John Roesler <john@confluent.io>, Guozhang Wang <wangguoz@gmail.com>
2018-05-30 17:28:17 -07:00
Jon Lee 1facab387f KAFKA-6028: Improve the quota throttle communication (KIP-219)
This implements KIP-219, where a broker returns a response with throttle time on
quota violation immediately after processing the corresponding request.  After
the response is sent out, the broker will keep the channel muted until the
throttle time is over. Also, on receiving a response with throttle time, client
will block outgoing communication to the broker for the specified throttle time.

See PR 4830, 5064 and 5094 for all the review history

Author: Jon Lee <jonlee@jonlee-ld1.linkedin.biz>

Reviewers: Jun Rao <junrao@gmail.com>, Rajini Sivaram <rajinisivaram@googlemail.com>, Ismael Juma <ismael@juma.me.uk>,  Dong Lin <lindong28@gmail.com>

Closes #5064 from jonlee2/kip-219
2018-05-30 10:10:33 -07:00
Chris Egerton a64ab91238 KAFKA-5540: Deprecate internal converter configs (KIP-174)
Implementation of [KIP-174](https://cwiki.apache.org/confluence/display/KAFKA/KIP-174+-+Deprecate+and+remove+internal+converter+configs+in+WorkerConfig)

Configuration properties 'internal.key.converter' and 'internal.value.converter'
are deprecated, and default to org.apache.kafka.connect.json.JsonConverter.

Warnings are logged if values are specified for either, or if properties that
appear to configure instances of internal converters (i.e., ones prefixed with
either 'internal.key.converter.' or 'internal.value.converter.') are given.

The property 'schemas.enable' is also defaulted to false for internal
JsonConverter instances (both for keys and values) if it isn't specified.

Documentation and code have also been updated with deprecation notices and
annotations, respectively.

Unit tests have been updated in `PluginsTest` to account for the new defaults for `schemas.enable` for internal key/value converters, and to ensure that (for the time being), internal key/value converters are still configurable despite being deprecated.

Author: Chris Egerton <chrise@confluent.io>
Author: Ewen Cheslack-Postava <me@ewencp.org>

Reviewers: Randall Hauch <rhauch@gmail.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #4693 from C0urante/kafka-5540
2018-05-29 16:22:47 -07:00
Ismael Juma 7132a85fc3 KAFKA-6921; Remove old Scala producer and related code
* Removed Scala producers, request classes, kafka.tools.ProducerPerformance, encoders,
tests.
* Updated ConsoleProducer to remove Scala producer support (removed `BaseProducer`
and several options that are not used by the Java producer).
* Updated a few Scala consumer tests to use the new producer (including a minor
refactor of `produceMessages` methods in `TestUtils`).
* Updated `ClientUtils.fetchTopicMetadata` to use `SimpleConsumer` instead of
`SyncProducer`.
* Removed `TestKafkaAppender` as it looks useless and it defined an `Encoder`.
* Minor import clean-ups

No new tests added since behaviour should remain the same after these changes.

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

Reviewers: Manikumar Reddy O <manikumar.reddy@gmail.com>, Dong Lin <lindong28@gmail.com>

Closes #5045 from ijuma/kafka-6921-remove-old-producer
2018-05-24 17:32:49 -07:00
Ismael Juma e70a191d30
KAFKA-4423: Drop support for Java 7 (KIP-118) and update deps (#5046)
* Set --source, --target and --release to 1.8.
* Build Scala 2.12 by default.
* Remove some conditionals in the build file now that Java 8
is the minimum version.
* Bump the version of Jetty, Jersey and Checkstyle (the newer
versions require Java 8).
* Fixed issues uncovered by the new version if Checkstyle.
* A couple of minor updates to handle an incompatible source
change in the new version of Jetty.
* Add dependency to jersey-hk2 to fix failing tests caused
by Jersey upgrade.
* Update release script to use Java 8 and to take into account
that Scala 2.12 is now built by default.
* While we're at it, bump the version of Gradle, Gradle plugins,
ScalaLogging, JMH and apache directory api.
* Minor documentation updates including the readme and upgrade
notes. A number of Streams Java 7 examples can be removed
subsequently.
2018-05-21 23:17:42 -07:00
Guozhang Wang c9161afda9
MINOR: doc change for deprecate removal (#5006)
Reviewers: John Roesler <john@confluent.io>, Bill Bejeck <bill@confluent.io>, Matthias J. Sax <matthias@confluent.io>
2018-05-15 20:26:19 -07:00
Anna Povzner 9679c44d2b KAFKA-6361: Fix log divergence between leader and follower after fast leader fail over (#4882)
Implementation of KIP-279 as described here: https://cwiki.apache.org/confluence/display/KAFKA/KIP-279%3A+Fix+log+divergence+between+leader+and+follower+after+fast+leader+fail+over

In summary:
- Added leader_epoch to OFFSET_FOR_LEADER_EPOCH_RESPONSE
- Leader replies with the pair( largest epoch less than or equal to the requested epoch, the end offset of this epoch)
- If Follower does not know about the leader epoch that leader replies with, it truncates to the end offset of largest leader epoch less than leader epoch that leader replied with, and sends another OffsetForLeaderEpoch request. That request contains the largest leader epoch less than leader epoch that leader replied with.

Reviewers: Dong Lin <lindong28@gmail.com>, Jun Rao <junrao@gmail.com>
2018-05-09 18:49:51 -07:00
Guozhang Wang 32e97b1d9d
MINOR: Remove deprecated parameter in ProcessorContext#register (#4911)
Updated the upgrade doc as well since we do not have an overloaded function without the deprecated parameter before. Also renamed the 1.2 release version to 2.0.

Reviewers: Bill Bejeck <bill@confluent.io>, Matthias J. Sax <matthias@confluent.io>
2018-05-07 09:22:26 -07:00
Surabhi Dixit 03a2d8243d KAFKA-6867; Corrected the typos in upgrade.html (#4970)
Reviewers: Jakob Homan <jghoman@gmail.com>, Jason Gustafson <jason@confluent.io>
2018-05-04 15:42:44 -07:00
khairy 6655a4d75f KAFKA-6535: Set default retention ms for Streams repartition topics to Long.MAX_VALUE (#4730)
Implements KIP-284

Reviewers: Matthias J. Sax <matthias@confluent.io>, Bill Bejeck <bill@confluent.io>, Guozhang Wang <guozhang@confluent.io>
2018-04-30 12:18:40 +02:00
Mickael Maison 83503404e4 KAFKA-6770; Add New Protocol Versions to 1.1.0 documentation (#4847)
Update 1.1 docs to include 2 new versions to existing APIs:
- DescribeConfigs v1
- Fetch v7

Also fix a typo in1 FetchRequest.
2018-04-17 13:07:08 -07:00
Allen Wang 19418fc86a KAFKA-6514; Add API version as a tag for the RequestsPerSec metric (#4506)
Updated `RequestChannel` to include `version` as a tag for all RequestsPerSec metrics (KIP-272). Updated tests to verify that the extra tag exists.
2018-04-16 10:16:26 -07:00
Matthias J. Sax 0c0d8363e5
KAFKA-6054: Fix upgrade path from Kafka Streams v0.10.0 (#4779)
Reviewers: Guozhang Wang <guozhang@confluent.io>, Bill Bejeck <bill@confluent.io>, John Roesler <john@confluent.io>, Damian Guy <damian@confluent.io>
2018-04-06 17:00:52 -07:00
Viktor Somogyi 1dc30272e1 KAFKA-5674; Reduce max.connections.per.ip minimum to 0 (#3610)
By allowing `max.connections.per.ip` to be 0, Kafka can support IP-based filtering using `max.connections.per.ip.overrides`.
2018-04-02 08:45:15 -07:00
Ewen Cheslack-Postava d13cbd0cae KAFKA-3806: Increase offsets retention default to 7 days (KIP-186) (#4648)
Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>
2018-03-05 22:21:53 -08:00
Jason Gustafson 660c0c0aa3 KAFKA-6238; Fix inter-broker protocol message format compatibility check
This patch fixes a bug in the validation of the inter-broker protocol and the message format version. We should allow the configured message format api version to be greater than the inter-broker protocol api version as long as the actual message format versions are equal. For example, if the message format version is set to 1.0, it is fine for the inter-broker protocol version to be 0.11.0 because they both use message format v2.

I have added a unit test which checks compatibility for all combinations of the message format version and the inter-broker protocol version.

Author: Jason Gustafson <jason@confluent.io>

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

Closes #4583 from hachikuji/KAFKA-6328-REOPENED
2018-02-21 09:38:39 +00:00
Rajini Sivaram b20639db44
MINOR: Enable deep-iteration to print data in DumpLogSegments (#4396)
Enable deep-iteration option when print-data-log is enabled in DumpLogSegments. Otherwise data is not printed.

Reviewers: Jason Gustafson <jason@confluent.io>, Ismael Juma <ismael@juma.me.uk>
2018-02-16 23:20:16 +00:00
Guozhang Wang 077fd9ced3
HOTFIX: Fix broken javadoc links on web docs(#4543)
Reviewers: Matthias J. Sax <matthias@confluent.io>
2018-02-08 09:31:58 -08:00
Matthias J. Sax 164fea30ea
MINOR: update upgrade notes for Streams API; message format 0.10 requiered (#4500)
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Bill Bejeck <bill@confluent.io>, Guozhang Wang <guozhang@confluent.io.>
2018-02-07 11:43:57 -08:00
Randall Hauch 4c48942f9d KAFKA-5142: Add Connect support for message headers (KIP-145)
**[KIP-145](https://cwiki.apache.org/confluence/display/KAFKA/KIP-145+-+Expose+Record+Headers+in+Kafka+Connect) has been accepted, and this PR implements KIP-145 except without the SMTs.**

Changed the Connect API and runtime to support message headers as described in [KIP-145](https://cwiki.apache.org/confluence/display/KAFKA/KIP-145+-+Expose+Record+Headers+in+Kafka+Connect).

The new `Header` interface defines an immutable representation of a Kafka header (key-value pair) with support for the Connect value types and schemas. This interface provides methods for easily converting between many of the built-in primitive, structured, and logical data types.

The new `Headers` interface defines an ordered collection of headers and is used to track all headers associated with a `ConnectRecord` (and thus `SourceRecord` and `SinkRecord`). This does allow multiple headers with the same key. The `Headers` contains methods for adding, removing, finding, and modifying headers. Convenience methods allow connectors and transforms to easily use and modify the headers for a record.

A new `HeaderConverter` interface is also defined to enable the Connect runtime framework to be able to serialize and deserialize headers between the in-memory representation and Kafka’s byte[] representation. A new `SimpleHeaderConverter` implementation has been added, and this serializes to strings and deserializes by inferring the schemas (`Struct` header values are serialized without the schemas, so they can only be deserialized as `Map` instances without a schema.) The `StringConverter`, `JsonConverter`, and `ByteArrayConverter` have all been extended to also be `HeaderConverter` implementations. Each connector can be configured with a different header converter, although by default the `SimpleHeaderConverter` is used to serialize header values as strings without schemas.

Unit and integration tests are added for `ConnectHeader` and `ConnectHeaders`, the two implementation classes for headers. Additional test methods are added for the methods added to the `Converter` implementations. Finally, the `ConnectRecord` object is already used heavily, so only limited tests need to be added while quite a few of the existing tests already cover the changes.

Author: Randall Hauch <rhauch@gmail.com>

Reviewers: Arjun Satish <arjun@confluent.io>, Ted Yu <yuzhihong@gmail.com>, Magesh Nandakumar <magesh.n.kumar@gmail.com>, Konstantine Karantasis <konstantine@confluent.io>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #4319 from rhauch/kafka-5142-b
2018-01-31 10:40:24 -08:00
Matthias J. Sax d673c8cf94 MINOR: update upgrade notes with regard to KIP-149 (#4439)
Reviewers: Guozhang Wang <wangguoz@gmail.com>, Damian Guy <damian.guy@gmail.com>
2018-01-26 09:18:22 -08:00
Matthias J. Sax 9ef883e62f MINOR: update docs with regard to improved resilience of Kafka Streams (#4380)
Reviewers: Guozhang Wang <wangguoz@gmail.com>, Joel Hamill, Damian Guy <damian.guy@gmail.com>, Bill Bejeck <bill@confluent.io>
2018-01-22 14:37:19 -08:00
cmolter 5d81639907 KAFKA-5890; records.lag should use tags for topic and partition rather than using metric name.
This is the implementation of KIP-225.
It marks the previous metrics as deprecated in the documentation and adds new metrics using tags.

Testing verifies that both the new and the old metric report the same value.

Author: cmolter <cmolter@apple.com>

Reviewers: Jiangjie (Becket) Qin <becket.qin@gmail.com>

Closes #4362 from lahabana/kafka-5890
2018-01-14 16:18:39 -08:00
Ismael Juma 88c2b6849a KAFKA-6317; Maven artifact for kafka should not depend on log4j
It should only depend on slf4j-api (like kafka-clients). The
release tarball still includes log4j and slf4j-log4j12.

Manually verified that there are no duplicate dependencies
in the release tarball and `./gradlew core:dependencies`
looks good.

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

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>

Closes #4297 from ijuma/kafka-6317-kafka-slf4j-api-only
2017-12-19 15:15:27 +00:00
Guozhang Wang 72eec0a04c KAFKA-6334: minor typo fix in web docs 2017-12-11 18:55:13 -08:00
Dong Lin 078fd21365 KAFKA-6174; Add methods in AdminClient Options classes to restore binary compatibility with 0.11
From 0.11 to 1.0, we moved `DescribeClusterOptions timeoutMs(Integer timeoutMs)` from
DescribeClusterOptions to AbstractOptions (similarly for other Options classes). This can
cause code compiled against 0.11.0.x to fail when it is executed with 1.0 kafka-clients jar.
This patch adds back these methods to restore binary compatibility with 0.11.

Author: Dong Lin <lindong28@gmail.com>

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

Closes #4257 from lindong28/KAFKA-6174
2017-12-06 15:56:56 +02:00
Jason Gustafson 062c5568e1 KAFKA-6238; Fix 1.0.0 upgrade instructions relating to the message format version
The upgrade instructions concerning the message format versions did not account
for upgrades from versions prior to 0.11.0.x.

Author: Jason Gustafson <jason@confluent.io>

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

Closes #4256 from hachikuji/KAFKA-6328
2017-11-23 14:46:21 +00:00
Guozhang Wang 520b313628 HOTFIX: Add missing template ref in upgrade section 2017-11-03 10:10:35 -07:00
Manikumar Reddy 76a45e0dce MINOR: Update `config/consumer.properties` to have new consumer properties
Author: Manikumar Reddy <manikumar.reddy@gmail.com>

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

Closes #4055 from omkreddy/update-consumer-props
2017-10-12 14:28:55 +01:00
Manikumar Reddy 10cd98cc89 KAFKA-5547; Return TOPIC_AUTHORIZATION_FAILED error if no describe access for topics
Author: Manikumar Reddy <manikumar.reddy@gmail.com>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>, Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #3924 from omkreddy/KAFKA-5547-TOPIC-AUTHRO
2017-10-06 12:51:30 -07:00
Rajini Sivaram 9949e1ed1b KAFKA-6004; Allow authentication providers to override error message
Author: Rajini Sivaram <rajinisivaram@googlemail.com>

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

Closes #4015 from rajinisivaram/KAFKA-6004-auth-exception
2017-10-04 13:44:46 -04:00
Jason Gustafson 5383f9bed0 MINOR: Use SecurityProtocol in AuthenticationContext
Since we removed the unused `TRACE` option from `SecurityProtocol`, it now seems safer to expose it from `AuthenticationContext`. Additionally this patch exposes javadocs under security.auth and relocates the `Login` and `AuthCallbackHandler` to a non-public package.

Author: Jason Gustafson <jason@confluent.io>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>, Manikumar Reddy <manikumar.reddy@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #3863 from hachikuji/use-security-protocol-in-auth-context
2017-10-04 09:20:21 -07:00
Rajini Sivaram c4b8a7eab4 KAFKA-5738; Upgrade note for cumulative count metric (KIP-187)
Author: Rajini Sivaram <rajinisivaram@googlemail.com>

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

Closes #4014 from rajinisivaram/MINOR-upgrade-KIP-187
2017-10-04 10:53:18 -04:00
Rajini Sivaram a202da742d KAFKA-4764; Upgrade notes for authentication failure handling (KIP-152)
Author: Rajini Sivaram <rajinisivaram@googlemail.com>

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

Closes #4013 from rajinisivaram/MINOR-upgrade-auth-failure
2017-10-04 10:25:08 -04:00
Dong Lin 716330a5b2 KAFKA-5843; Mx4jLoader.maybeLoad should only be executed if kafka_mx4jenable is set to true
Author: Dong Lin <lindong28@gmail.com>
Author: Ralph Weires

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

Closes #3797 from lindong28/KAFKA-5843
2017-10-03 11:27:22 +01:00
Ismael Juma 4f4f995325 KAFKA-5746; Return 0.0 from Metric.value() instead of throwing exception
This is less likely to break custom metric reporters and since the method
is deprecated, people will be warned about this potential issue.

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

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>, Xavier Léauté <xavier@confluent.io>

Closes #3996 from ijuma/avoid-exception-in-measurable-value
2017-10-01 01:29:33 +01:00
Rajini Sivaram 021d8a8e96 KAFKA-5746; Add new metrics to support health checks (KIP-188)
Adds new metrics to support health checks:
1. Error rates for each request type, per-error code
2. Request size and temporary memory size
3. Message conversion rate and time
4. Successful and failed authentication rates
5. ZooKeeper latency and status
6. Client version

Author: Rajini Sivaram <rajinisivaram@googlemail.com>

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

Closes #3705 from rajinisivaram/KAFKA-5746-new-metrics
2017-09-28 21:58:59 +01:00
Manikumar Reddy 8dfdcfd02c KAFKA-5750; Elevate log messages for denials to INFO in SimpleAclAuthorizer
Author: Manikumar Reddy <manikumar.reddy@gmail.com>

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

Closes #3698 from omkreddy/KAFKA-5750
2017-09-27 16:39:12 +01:00
Dong Lin 4e43a7231d MINOR: Improve documentation of AdminClient and fix exception thrown
Make documentation consistent across methods and throw
IllegalStateException instead of IllegalArgumentException in
some cases.

Also include a couple of minor fixes in upgrade.html.

Author: Dong Lin <lindong28@gmail.com>

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

Closes #3781 from lindong28/minor-admin-client-comment
2017-09-26 08:20:26 +01:00
Mickael Maison a0f533266a KAFKA-3356: Remove ConsumerOffsetChecker
Author: Mickael Maison <mickael.maison@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #3036 from mimaison/KAFKA-3356
2017-09-24 10:08:52 +08:00
Mickael Maison c8c6ab6324 KAFKA-5735; KIP-190: Handle client-ids consistently
Developed with edoardocomar

Author: Mickael Maison <mickael.maison@gmail.com>

Reviewers: Edoardo Comar <ecomar@uk.ibm.com>, Rajini Sivaram <rajinisivaram@googlemail.com>

Closes #3906 from mimaison/KAFKA-5735
2017-09-21 21:16:57 +01:00
Guozhang Wang f5310d645c MINOR: doc changes for KIP-138
1. Core concepts (added the stream time definition), upgrade guide and developer guide.
2. Related Java docs changes.

Author: Guozhang Wang <wangguoz@gmail.com>

Reviewers: Bill Bejeck <bill@confluent.io>, Damian Guy <damian.guy@gmail.com>

Closes #3732 from guozhangwang/KMinor-kip138-docs
2017-08-30 09:45:16 -07:00
Guozhang Wang 21fea170d8 MINOR: add upgrade section for 1.0.0
1. Add upgrade section for 1.0.0, including Streams API changes section.
2. Add metrics name changes section.

Author: Guozhang Wang <wangguoz@gmail.com>

Reviewers: Eno Thereska <eno.thereska@gmail.com>, Damian Guy <damian.guy@gmail.com>

Closes #3687 from guozhangwang/KMinor-metrics-upgrade-guide
2017-08-24 09:12:12 -07:00
Jason Gustafson 017a21c604 MINOR: Remove unneeded error handlers in deprecated request objects
These handlers were previously used on the broker to handle uncaught exceptions, but now the broker users the new Java request objects exclusively.

Author: Jason Gustafson <jason@confluent.io>

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

Closes #3646 from hachikuji/remove-old-request-error-handlers
2017-08-10 11:07:53 -07:00
Ismael Juma 69d3d4aad6 KAFKA-5470; Replace -XX:+DisableExplicitGC with -XX:+ExplicitGCInvokesConcurrent in kafka-run-class
This is important because Bits.reserveMemory calls System.gc() hoping to free native
memory in order to avoid throwing an OutOfMemoryException. This call is currently
a no-op due to -XX:+DisableExplicitGC.

It's worth mentioning that -XX:MaxDirectMemorySize can be used to increase the
amount of native memory available for allocation of direct byte buffers.

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

Reviewers: Apurva Mehta <apurva@confluent.io>, Manikumar Reddy <manikumar.reddy@gmail.com>, Jason Gustafson <jason@confluent.io>

Closes #3371 from ijuma/kafka-5470-explicit-gc-invokes-concurrent
2017-08-09 23:38:57 +01:00
Ismael Juma 5effe72390 MINOR: Next release will be 1.0.0
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #3580 from ijuma/bump-to-1.0.0-SNAPSHOT
2017-07-26 13:01:41 -07:00
Dong Lin fc93fb4b61 KAFKA-4763; Handle disk failure for JBOD (KIP-112)
Author: Dong Lin <lindong28@gmail.com>

Reviewers: Jiangjie Qin <becket.qin@gmail.com>, Jun Rao <junrao@gmail.com>, Ismael Juma <ismael@juma.me.uk>, Onur Karaman <okaraman@linkedin.com>

Closes #2929 from lindong28/KAFKA-4763
2017-07-22 12:35:32 -07:00
Ismael Juma 91b5fc737b MINOR: Give correct instructions for retaining previous unclear leader election behaviour
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>

Closes #3561 from ijuma/fix-upgrade-note-for-unclean-leader-election
2017-07-22 10:36:12 +01:00
Vahid Hashemian 5bb53e034e KAFKA-5534; KafkaConsumer `offsetForTimes` result should include partitions with no offset
For topics that support timestamp search, if no offset is found for a partition, the partition should still be included in the result with a `null` offset value. This `KafkaConsumer` method currently excludes such partitions from the result.

Author: Vahid Hashemian <vahidhashemian@us.ibm.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #3460 from vahidhashemian/KAFKA-5534
2017-07-20 17:38:30 -07:00
Gwen Shapira ea8845bbd6 KAFKA-5384: Enable topic deletion by default
https://cwiki.apache.org/confluence/display/KAFKA/KIP-162+-+Enable+topic+deletion+by+default

Author: Gwen Shapira <cshapi@gmail.com>

Reviewers: Ismael Juma

Closes #3241 from gwenshap/KAFKA-5384
2017-07-18 08:57:06 -07:00
Jason Gustafson e6e2631743 MINOR: Detail message/batch size implications for conversion between old and new formats
Author: Jason Gustafson <jason@confluent.io>

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

Closes #3373 from hachikuji/fetch-size-upgrade-notes
2017-06-21 14:04:19 -07:00
Jason Gustafson 8711e5937f KAFKA-5019; Upgrades notes for idempotent/transactional features and new message format
Author: Jason Gustafson <jason@confluent.io>

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

Closes #3212 from hachikuji/KAFKA-5019
2017-06-03 06:36:29 +01:00
Ismael Juma 4959444afc KAFKA-5236; Increase the block/buffer size when compressing with Snappy or Gzip
We had originally increased Snappy’s block size as part of KAFKA-3704. However,
we had some issues with excessive memory usage in the producer and we reverted
it in 7c6ee8d5e.

After more investigation, we fixed the underlying reason why memory usage seemed
to grow much more than expected via KAFKA-3747 (included in 0.10.0.1).

In 0.10.2, we changed the broker to use the same classes as the producer and the
broker’s block size for Snappy was changed from 32 KB to 1KB. As reported in
KAFKA-5236, the on disk size is, in some cases, 50% larger when the data is compressed
with 1 KB instead of 32 KB as the block size.

As discussed in KAFKA-3704, it may be worth making this configurable and/or allocate
the compression buffers from the producer pool. However, for 0.11.0.0, I think the
simplest thing to do is to default to 32 KB for Snappy (the default if no block size
is provided).

I also increased the Gzip buffer size. 1 KB is too small and the default is smaller
still (512 bytes). 8 KB (which is the default buffer size for BufferedOutputStream)
seemed like a reasonable default.

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

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #3205 from ijuma/kafka-5236-snappy-block-size
2017-06-02 21:20:02 +01:00
Guozhang Wang 4c8ec795a0 MINOR: Add upgrade notes for KAFKA-2358
Author: Guozhang Wang <wangguoz@gmail.com>

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

Closes #3200 from guozhangwang/KMinor-KAFKA-2358-upgrade-notes
2017-06-01 18:24:54 -07:00
Matthias J. Sax 1e350b860a MINOR: update Streams docs for KIP-123
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Ismael Juma, Ewen Chesklack-Postava, Bill Bejeck, Guozhang Wang

Closes #3194 from mjsax/minor-update-docs-for-kip-123
2017-06-01 15:27:41 -07:00
Damian Guy adb4ea74ab MINOR: add upgrade not for group.initial.rebalance.delay.ms
Add a new entry in upgrade.html for `group.initial.rebalance.delay.ms`

Author: Damian Guy <damian.guy@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Guozhang Wang <wangguoz@gmail.com>

Closes #3189 from dguy/relabance-delay
2017-06-01 13:42:12 -07:00
Jiangjie Qin 6b03497915 KAFKA-5344; set message.timestamp.difference.max.ms back to Long.MaxValue
Author: Jiangjie Qin <becket.qin@gmail.com>

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

Closes #3163 from becketqin/KAFKA-5344
2017-05-30 15:44:34 +01:00
Jason Gustafson cea319a4ad KAFKA-4935; Deprecate client checksum API and compute lazy partial checksum for magic v2
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Apurva Mehta <apurva@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #3123 from hachikuji/KAFKA-4935
2017-05-25 08:21:01 +01:00
Michael André Pearce 1c7fdd2843 KAFKA-4208; Add record headers upgrade doc
Update upgrade.html

Raising this now, as KIP-118 is pulled from release as such submitting this without java 8 changes.

As per remaining review comment from https://github.com/apache/kafka/pull/2772, updating the upgrade notes.

Author: Michael André Pearce <michael.andre.pearce@me.com>
Author: Michael Andre Pearce <Michael.Andre.Pearce@me.com>

Reviewers: Jiangjie Qin <becket.qin@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #2991 from michaelandrepearce/KIP-82
2017-05-21 14:34:19 -07:00
Ismael Juma 59b918ec2b KAFKA-3763; Remove deprecated APIs for 0.11.0.0
This only removes deprecated methods,
fields and constructors in a small number of classes.

Deprecated producer configs is tracked via KAFKA-3353
and the old clients and related (tools, etc.) won't
be removed in 0.11.0.0.

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

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2995 from ijuma/kafka-3763-remove-deprecated-0.11
2017-05-08 10:29:31 -07:00
Ismael Juma 3bcadbfb47 KAFKA-3353; Remove deprecated producer configs
These configs have been deprecated since 0.9.0.0:
block.on.buffer.full, metadata.fetch.timeout.ms and timeout.ms

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

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2987 from ijuma/kafka-3353-remove-deprecated-producer-configs
2017-05-08 10:00:04 -07:00
Ryan P 8d74920163 KAFKA-3754; Add GC log retention policy to limit size of log
Add a default log retention policy to keep GC logs from growing too large

Author: Ryan P <ryan.n.pridgeon@gmail.com>

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

Closes #1431 from rnpridgeon/KAFKA-3754
2017-05-03 10:51:32 +01:00
sharad-develop 46da01a4a7 KAFKA-4623; Default unclean.leader.election.enabled to false (KIP-106)
Author: sharad.develop <sharad.develop@gmail.com>

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

Closes #2625 from sharad-develop/KAFKA-4623
2017-05-02 16:27:28 +01:00
Gwen Shapira 3c93fa321b HOTFIX: HTML formatting error in upgrade docs
Introduced in PR #2824. Already fixed in the
website github.

Author: Gwen Shapira <cshapi@gmail.com>

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

Closes #2844 from gwenshap/docs-hotfix

(cherry picked from commit 5f728532ac)
Signed-off-by: Ismael Juma <ismael@juma.me.uk>
2017-04-12 11:09:21 +01:00
Eno Thereska a74f035844 MINOR: Added changes in 0.10.2.1
Author: Eno Thereska <eno@confluent.io>

Reviewers: Gwen Shapira

Closes #2824 from enothereska/minor-docs-0.10.2.1

(cherry picked from commit 5a68fa7e4e)
Signed-off-by: Gwen Shapira <cshapi@gmail.com>
2017-04-11 17:08:04 -07:00
Dong Lin 8b05ad406d KAFKA-4586; Add purgeDataBefore() API (KIP-107)
Author: Dong Lin <lindong28@gmail.com>

Reviewers: Jun Rao <junrao@gmail.com>, Ismael Juma <ismael@juma.me.uk>, Jiangjie Qin <becket.qin@gmail.com>

Closes #2476 from lindong28/KAFKA-4586
2017-03-28 09:59:44 -07:00
Jason Gustafson 5bd06f1d54 KAFKA-4816; Message format changes for idempotent/transactional producer (KIP-98)
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Jun Rao <junrao@gmail.com>, Apurva Mehta <apurva@confluent.io>, Guozhang Wang <wangguoz@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #2614 from hachikuji/exactly-once-message-format
2017-03-24 19:38:43 +00:00
Guozhang Wang 6a55d41fe3 HOTFIX: add js template to upgrade.html
Author: Guozhang Wang <wangguoz@gmail.com>

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

Closes #2591 from guozhangwang/KHotfix-explicit-version
2017-02-23 13:21:49 -08:00
Jiangjie Qin 1f2ee5f0a9 KAFKA-4340; Follow-up fixing system test failures and handling non default log.retention.ms
Author: Jiangjie Qin <becket.qin@gmail.com>

Reviewers: Jun Rao <junrao@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #2544 from becketqin/KAFKA-4340_follow_up
2017-02-17 02:40:34 -08:00
Matthias J. Sax 2c91b324d4 HOTFIX: fixed section incompatible Steams API changes
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Damian Guy, Guozhang Wang

Closes #2492 from mjsax/hotfixDocs
2017-02-15 13:17:29 -08:00
Guozhang Wang a15fcea799 MINOR: add architecture section and configure / execution for streams
1. Added an architecture section.
2. Added a configuration / execution sub-section to developer guide.

Minor tweaks and a bunch of missing fixes from `kafka-site` repo.

Author: Guozhang Wang <wangguoz@gmail.com>

Reviewers: Matthias J. Sax <matthias@confluent.io>, Derrick Or <derrickor@gmail.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2488 from guozhangwang/KMinor-streams-docs-second-pass
2017-02-09 19:13:23 -08:00
Matthias J. Sax ab4ebb4bb9 MINOR: added upgrade and API changes to docs
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Ismael Juma, Will Marshall, Damian Guy, Guozhang Wang, Michael G. Noll

Closes #2461 from mjsax/addStreamsUpdateSecton
2017-02-02 21:36:27 -08:00
Onur Karaman 063d534c51 KAFKA-3959: enforce offsets.topic.replication.factor upon __consumer_offsets auto topic creation (KIP-115)
Kafka brokers have a config called "offsets.topic.replication.factor" that specify the replication factor for the "__consumer_offsets" topic. The problem is that this config isn't being enforced. If an attempt to create the internal topic is made when there are fewer brokers than "offsets.topic.replication.factor", the topic ends up getting created anyway with the current number of live brokers. The current behavior is pretty surprising when you have clients or tooling running as the cluster is getting setup. Even if your cluster ends up being huge, you'll find out much later that __consumer_offsets was setup with no replication.

The cluster not meeting the "offsets.topic.replication.factor" requirement on the internal topic is another way of saying the cluster isn't fully setup yet.

The right behavior should be for "offsets.topic.replication.factor" to be enforced. Topic creation of the internal topic should fail with GROUP_COORDINATOR_NOT_AVAILABLE until the "offsets.topic.replication.factor" requirement is met. This closely resembles the behavior of regular topic creation when the requested replication factor exceeds the current size of the cluster, as the request fails with error INVALID_REPLICATION_FACTOR.

Author: Onur Karaman <okaraman@linkedin.com>

Reviewers: Jason Gustafson <jason@confluent.io>, Ismael Juma <ismael@juma.me.uk>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2177 from onurkaraman/KAFKA-3959
2017-02-01 19:55:06 -08:00
Ismael Juma 1956b46252 KAFKA-4578; Upgrade notes for 0.10.2.0
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>, Michael G. Noll

Closes #2445 from ijuma/kafka-4578-upgrade-notes-0.10.2
2017-01-27 11:10:28 +00:00
Hojjat Jafarpour 62206de4e5 KAFKA-4060 Follow-up: update docs accordingly
Updated the docs with changes in KAFKA-4060.

Author: Hojjat Jafarpour <hojjat@Hojjat-Jafarpours-MBP.local>
Author: Hojjat Jafarpour <hojjat@HojjatJpoursMBP.attlocal.net>

Reviewers: Ismael Juma, Matthias J. Sax, Guozhang Wang

Closes #2377 from hjafarpour/KAFKA-4060-docs-update
2017-01-23 10:21:06 -08:00
Rajini Sivaram 80d6c64c1b KAFKA-4626; Add KafkaConsumer#close change to upgrade notes
Author: Rajini Sivaram <rajinisivaram@googlemail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #2366 from rajinisivaram/KAFKA-4626
2017-01-13 09:32:46 -08:00
huxi 29d456cd21 KAFKA-4351; MirrorMaker with new consumer should support comma-separated regex
This makes it consistent with MirrorMaker with the old consumer.

Author: huxi <huxi@zhenrongbao.com>
Author: amethystic <huxi_2b@hotmail.com>

Reviewers: Vahid Hashemian <vahidhashemian@us.ibm.com>, Ismael Juma <ismael@juma.me.uk>

Closes #2072 from amethystic/kafka-4351_Regex_behavior_change_for_new_consumer
2016-12-31 12:22:23 +00:00
Matthias J. Sax 9bed8fbcfc KAFKA-4393: Improve invalid/negative TS handling
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Michael G. Noll, Eno Thereska, Damian Guy, Guozhang Wang

Closes #2117 from mjsax/kafka-4393-improveInvalidTsHandling
2016-12-09 16:17:36 -08:00
Stig Rohde Døssing 1503f7603c KAFKA-4387; KafkaConsumer should properly handle interrupts
See https://issues.apache.org/jira/browse/KAFKA-4387

Author: Stig Rohde Døssing <sdo@it-minds.dk>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #2110 from srdo/KAFKA-4387
2016-11-29 19:57:13 -08:00
Matthias J. Sax 6972d9476f MINOR: add upgrade guide for Kafka Streams API
Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Michael G. Noll, Eno Thereska

Closes #2114 from mjsax/updateDocUpgradeSection
2016-11-09 15:31:11 -08:00
Manikumar Reddy O 3c02e5a20f MINOR: Remove duplicate doc headers
Author: Manikumar Reddy O <manikumar.reddy@gmail.com>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2021 from omkreddy/LATEST-DOC-CHANGE
2016-10-18 14:09:09 -07:00
Vahid Hashemian e972d2afd3 MINOR: Fix typos in documentation
And improve readability by adding proper punctuations.

Author: Vahid Hashemian <vahidhashemian@us.ibm.com>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #2002 from vahidhashemian/doc/fix_typos
2016-10-10 15:58:37 -07:00
Ismael Juma 4efa833f45 MINOR: Clarify 0.10.1.0 upgrade docs
This is a minor change to fix the most glaring issues. We have another JIRA to revamp the upgrade docs.

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

Reviewers: Jeff Klukas <jeff@klukas.net>, Jiangjie Qin <becket.qin@gmail.com>, Jason Gustafson <jason@confluent.io>

Closes #1971 from ijuma/kafka-4257-upgrade-docs-inconsitencies
2016-10-06 09:39:26 -07:00
Jason Gustafson d8d2f3aac4 MINOR: Tweak upgrade note on KIP-62 to include request.timeout.ms
Author: Jason Gustafson <jason@confluent.io>

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

Closes #1960 from hachikuji/add-note-on-request-timeout
2016-10-04 10:38:49 -07:00
Jason Gustafson 1a396c9cf2 MINOR: Add upgrade notes for KIP-62
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Guozhang Wang <wangguoz@gmail.com>

Closes #1956 from hachikuji/add-kip-62-upgrade-notes
2016-10-03 21:17:11 -07:00
Ismael Juma cf0bf7c7a2 MINOR: Tweak implementation of `FetchRequest.shuffle` and upgrade.html improvements
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #1955 from ijuma/kip-74-follow-up
2016-10-04 02:18:19 +01:00
Jason Gustafson 7115c66aef MINOR: Follow-up minor improvements/cleanup for KAFKA-3396
Author: Jason Gustafson <jason@confluent.io>

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

Closes #1946 from hachikuji/followup-for-kafka-3396
2016-10-03 16:49:50 -07:00
Edoardo Comar 8124f6e099 KAFKA-3396; Ensure Describe access is required to detect topic existence
Reopening of https://github.com/apache/kafka/pull/1428

Author: Edoardo Comar <ecomar@uk.ibm.com>
Author: Mickael Maison <mickael.maison@gmail.com>

Reviewers: Grant Henke <granthenke@gmail.com>, Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #1908 from edoardocomar/KAFKA-3396
2016-09-30 23:07:51 -07:00
Vahid Hashemian d2a267b111 KAFKA-3697; Clean up website documentation of client usage
This is to imply that the Java consumer/producer are the recommended consumer/producer now.

Author: Vahid Hashemian <vahidhashemian@us.ibm.com>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #1921 from vahidhashemian/KAFKA-3697
2016-09-29 19:37:20 -07:00
Jiangjie Qin aa506a6919 KAFKA-4194; Follow-up improvements/testing for ListOffsets v1 (KIP-79)
Author: Jiangjie Qin <becket.qin@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #1897 from becketqin/KAFKA-4194
2016-09-28 17:58:08 -07:00
Ismael Juma 61d3378bc8 MINOR: Remove no longer required --new-consumer switch in docs
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #1905 from ijuma/no-new-consumer-switch-in-examples
2016-09-27 16:49:46 -07:00
Sumit Arrawatia 36242b846a KAFKA-4151; Update public docs for Cluster Id (KIP-78)
- Updated implementation docs with details on Cluster Id generation.
- Mention cluster id in "noteworthy changes for 0.10.1.0" in upgrade docs.

Author: Sumit Arrawatia <sumit.arrawatia@gmail.com>
Author: arrawatia <sumit.arrawatia@gmail.com>

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

Closes #1895 from arrawatia/kip-78-docs
2016-09-24 10:23:18 +01:00
Jiangjie Qin eaaa433fc9 KAFKA-4148; Support ListOffsetRequest v1 and search offsets by timestamp in consumer (KIP-79)
Author: Jiangjie Qin <becket.qin@gmail.com>

Reviewers: Jun Rao <junrao@gmail.com>, Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>

Closes #1852 from becketqin/KAFKA-4148
2016-09-19 18:38:27 -07:00
Ismael Juma 3281b3c904 KAFKA-3283; Remove beta from new consumer documentation
Include a few clean-ups (also in producer section), mention deprecation plans and reorder so that the new consumer documentation is before the old consumers.

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

Reviewers: Jason Gustafson <jason@confluent.io>

Closes #1880 from ijuma/remove-beta-from-new-consumer-documentation
2016-09-19 14:26:26 -07:00
Jiangjie Qin af9fc503de KAFKA-4099; Fix the potential frequent log rolling
Author: Jiangjie Qin <becket.qin@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jun Rao <junrao@gmail.com>

Closes #1809 from becketqin/KAFKA-4099
2016-09-02 12:49:34 -07:00
Jiangjie Qin 79d3fd2bf0 KAFKA-3163; Add time based index to Kafka.
This patch is for KIP-33.
https://cwiki.apache.org/confluence/display/KAFKA/KIP-33+-+Add+a+time+based+log+index

Author: Jiangjie Qin <becket.qin@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jun Rao <junrao@gmail.com>, Liquan Pei <liquanpei@gmail.com>

Closes #1215 from becketqin/KAFKA-3163
2016-08-19 10:07:07 -07:00
Gwen Shapira 071b76cc50 KAFKA-3852: Clarify how to handle message format upgrade without killing performance
…ing performance

Author: Gwen Shapira <cshapi@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #1678 from gwenshap/kafka-3852
2016-07-28 13:48:04 -07:00
Roger Hoover cf03f349ca KAFKA-3761; Remove BrokerState "RunningAsController"
The reasons to remove it are:
1. It's currently broken.  The purpose of the [JIRA](https://issues.apache.org/jira/browse/KAFKA-3761) was to report that the RunningAsController state gets overwritten back to "RunningAsBroker".
2. It's not a useful state.
  a. If clients want to use this metric to know whether a broker is ready to receive requests or not, they do not care whether or not the broker is the controller
  b. there is already a separate boolean property, KafkaController.isActive which contains this information.

Author: Roger Hoover <roger.hoover@gmail.com>

Reviewers: Grant Henke <granthenke@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #1437 from theduderog/KAFKA-3761-broker-state
2016-06-29 22:58:45 +02:00
Ismael Juma b9f1c60328 MINOR: Mention `log.message.format.version=0.10.0` in rolling upgrade section
We had mentioned this step in the performance impact section in the middle of a long paragraph, which made it easy to miss. I also tweaked the reason for setting `log.message.format.version` as it could be misinterpreted previously.

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

Reviewers: Ewen Cheslack-Postava <ewen@confluent.io>

Closes #1514 from ijuma/tweak-upgrade-notes
2016-06-19 16:03:40 -07:00
MayureshGharat ab8fc86382 KAFKA-3393; Updated the docs to reflect the deprecation of block.on.buffer.full and usage of max.block.ms
Author: MayureshGharat <gharatmayuresh15@gmail.com>

Reviewers: Grant Henke <granthenke@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #1060 from MayureshGharat/KAFKA-3393
2016-05-18 01:51:23 +01:00
Ismael Juma 9a3fcf4135 KAFKA-3704; Revert "Remove hard-coded block size in KafkaProducer"
This is not an exact revert as the code changed a bit since the
original commit. We also include a note in `upgrade.html`.

The original commit is 1182d61deb.

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

Reviewers: Gwen Shapira, Guozhang Wang

Closes #1391 from ijuma/kafka-3704-revert and squashes the following commits:

7891b67 [Ismael Juma] Tweak upgrade note based on Gwen's feedback
1673cd0 [Ismael Juma] Revert "KAFKA-3704: Remove hard-coded block size in KafkaProducer"
2016-05-16 12:00:06 -07:00
Tom Crayford 62985f313f MINOR: document increased network bandwidth of 0.10 under replication
If you're pushing close to the network capacity, 0.10's additional 8 bytes per message can lead to overload of your network. We (Heroku Kafka) ran into this issue whilst benchmarking 0.10 RC and the ijuma suggested it belonged in the update note.

Comments/suggestions welcome.

Author: Tom Crayford <tcrayford@googlemail.com>

Reviewers: Jun Rao <junrao@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #1389 from tcrayford/upgrade_note_about_increased_network_bandwidth
2016-05-16 13:39:33 +01:00
Jiangjie Qin 7ded19a29e KAFKA-3565; Add documentation to warn user about the potential messag…
…e throughput drop due to the addition of timestamp field.

Author: Jiangjie Qin <becket.qin@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jun Rao <junrao@gmail.com>

Closes #1372 from becketqin/KAFKA-3565
2016-05-15 09:04:21 -07:00
Ismael Juma 13130139ff KAFKA-3713; Close `compressor` to fix memory leak
This fixes test_producer_throughput with compression_type=snappy.

Also: added heap dump on out of memory error to `producer_performance.py` and corrected the upgrade note related to the change in buffer size for compression streams.

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

Reviewers: Gwen Shapira

Closes #1385 from ijuma/kafka-3713-test_producer_throughput-snappy-fail and squashes the following commits:

54c7962 [Ismael Juma] Correct upgrade note about buffer size for compression stream
515040b [Ismael Juma] Call `compressor.close()` to fix memory leak
5311e5b [Ismael Juma] Dump heap on out of memory error when running `producer_performance.py`
2016-05-13 21:03:35 -07:00
Ismael Juma 84d17bdf22 MINOR: Fix order of compression algorithms in upgrade note
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Guozhang Wang <wangguoz@gmail.com>, Jun Rao <junrao@gmail.com>

Closes #1373 from ijuma/fix-producer-buffer-size-upgrade-note
2016-05-12 01:38:50 +01:00
Guozhang Wang 1182d61deb KAFKA-3704: Remove hard-coded block size in KafkaProducer
Author: Guozhang Wang <wangguoz@gmail.com>

Reviewers: Ismael Juma

Closes #1371 from guozhangwang/K3565-remove-compression-blocksize
2016-05-11 17:01:14 -07:00
Guozhang Wang 6f1873242c MINOR: Add Kafka Streams API / upgrade notes
Author: Guozhang Wang <wangguoz@gmail.com>

Reviewers: Michael G. Noll <michael@confluent.io>, Ismael Juma <ismael@juma.me.uk>

Closes #1321 from guozhangwang/KStreamsJavaDoc
2016-05-10 08:00:51 +01:00
Dana Powers 8fe2552239 KAFKA-3160; Fix LZ4 Framing
This contribution is my original work and I license the work under Apache 2.0.

Author: Dana Powers <dana.powers@gmail.com>
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Jun Rao <junrao@gmail.com>, Ismael Juma <ismael@juma.me.uk>

Closes #1212 from dpkp/KAFKA-3160
2016-05-07 19:35:55 +01:00
Jason Gustafson 2758395352 KAFKA-3425: add missing upgrade notes
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Grant Henke, Ashish Singh, Ismael Juma, Guozhang Wang

Closes #1159 from hachikuji/KAFKA-3425
2016-03-29 14:18:57 -07:00
Jason Gustafson d691faf98c KAFKA-3463: change default receive buffer size for consumer to 64K
Author: Jason Gustafson <jason@confluent.io>

Reviewers: Gwen Shapira

Closes #1140 from hachikuji/KAFKA-3463
2016-03-25 12:51:54 -07:00
Grant Henke d3a66a6536 KAFKA-3460: Remove old 0.7 KafkaMigrationTool
Author: Grant Henke <granthenke@gmail.com>

Reviewers: Gwen Shapira

Closes #1136 from granthenke/remove-07-migration
2016-03-25 10:07:05 -07:00
Allen Wang 951e30adc6 KAFKA-1215; Rack-Aware replica assignment option
Please see https://cwiki.apache.org/confluence/display/KAFKA/KIP-36+Rack+aware+replica+assignment for the overall design.

The update to TopicMetadataRequest/TopicMetadataResponse will be done in a different PR.

Author: Allen Wang <awang@netflix.com>
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jason Gustafson <jason@confluent.io>, 	Grant Henke <granthenke@gmail.com>, Jun Rao <junrao@gmail.com>

Closes #132 from allenxwang/KAFKA-1215
2016-03-15 10:03:03 -07:00
Jiangjie Qin ffbe624e6f KAFKA-3373; add 'log' prefix to configurations in KIP-31/32
Author: Jiangjie Qin <becket.qin@gmail.com>

Reviewers: Gwen Shapira

Closes #1049 from becketqin/KAFKA-3373
2016-03-14 19:13:26 -07:00
Ismael Juma 695fdc69db KAFKA-3273; MessageFormatter and MessageReader interfaces should be resilient to changes
* Change `MessageFormat.writeTo` to take a `ConsumerRecord`
* Change `MessageReader.readMessage()` to use `ProducerRecord`

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

Reviewers: Jun Rao <junrao@gmail.com>

Closes #972 from ijuma/kafka-3273-message-formatter-and-reader-resilient
2016-02-29 18:52:54 -08:00
Ismael Juma 01aeea7c7b KAFKA-3259 KAFKA-3253; KIP-31/KIP-32 Follow-up
This PR includes a number of clean-ups:
* Code style
* Documentation wording improvements
* Efficiency improvements

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

Reviewers: Jun Rao <junrao@gmail.com>

Closes #943 from ijuma/kafka-3259-kip-31-32-clean-ups
2016-02-24 11:28:53 -08:00
Jiangjie Qin 45c8195fa1 KAFKA-3025; Added timetamp to Message and use relative offset.
See KIP-31 and KIP-32 for details.

A few notes on the patch:
1. This patch implements KIP-31 and KIP-32. The patch includes features in both KAFKA-3025,  KAFKA-3026 and KAFKA-3036
2. All unit tests passed.
3. The unit tests were run with new and old message format.
4. When message format conversion occurs during consumption, the consumer will not be able to detect the message size too large situation. I did not try to fix this because the situation seems rare and only happen during migration phase.

Author: Jiangjie Qin <becket.qin@gmail.com>
Author: Ismael Juma <ismael@juma.me.uk>
Author: Jiangjie (Becket) Qin <becket.qin@gmail.com>

Reviewers: Jason Gustafson <jason@confluent.io>, Anna Povzner <anna@confluent.io>, Ismael Juma <ismael@juma.me.uk>, Guozhang Wang <wangguoz@gmail.com>, Jun Rao <junrao@gmail.com>

Closes #764 from becketqin/KAFKA-3025
2016-02-19 07:56:40 -08:00
Rajini Sivaram c97a75d985 KAFKA-3170; Set default fetch_min_bytes in new consumer to 1
Set default to 1 instead of 1024, this matches the existing doc and feels like a better default value. Have run the unit tests with the change.

Author: Rajini Sivaram <rajinisivaram@googlemail.com>

Reviewers: Jason Gustafson, Ismael Juma, Grant Henke, Guozhang Wang

Closes #832 from rajinisivaram/KAFKA-3170
2016-02-02 09:38:52 -08:00
Grant Henke eaa1433a2f KAFKA-3164: Document client and mirrormaker upgrade procedure/require…
…ments

Author: Grant Henke <granthenke@gmail.com>

Reviewers: Gwen Shapira

Closes #838 from granthenke/upgrade-docs
2016-01-30 16:22:42 -08:00
Jakub Nowak 8f302c83c3 KAFKA-3086: Remove unused method in MirrorMaker.
Author: Jakub Nowak <jakub.nowak94@interia.pl>

Reviewers: Ismael Juma, Gwen Shapira, Grant Henke, Guozhang Wang

Closes #758 from Mszak/kafka-3086
2016-01-29 08:43:33 -08:00
Ismael Juma f2d4ed5bc4 MINOR: Upgrade note on compacted topics behaviour on receiving message without key
Author: Ismael Juma <ismael@juma.me.uk>

Reviewers: Grant Henke, Guozhang Wang

Closes #798 from ijuma/upgrade-notes-unkeyed-messages-to-compacted-topics
2016-01-21 11:44:44 -08:00
Grant Henke 5c337d7598 KAFKA-3012: Avoid reserved.broker.max.id collisions on upgrade
Provides a configuration to opt out of broker id generation.

Author: Grant Henke <granthenke@gmail.com>

Reviewers: Gwen Shapira

Closes #762 from granthenke/id-generation
2016-01-18 18:39:55 -08:00
Gabriel Zhang ccdf552749 MINOR: Fix typos in Kafka website page
Fix two minor typos in Kafka official website page.

Author: Gabriel Zhang <smalldirector@yahoo.com>

Reviewers: Ismael Juma, Guozhang Wang

Closes #742 from smalldirector/kafka-document-typos-fix
2016-01-08 10:43:52 -08:00
Grant Henke ee1770e00e KAFKA-2988; Change default configuration of the log cleaner
Author: Grant Henke <granthenke@gmail.com>

Reviewers: Ismael Juma <ismael@juma.me.uk>, Jun Rao <junrao@gmail.com>

Closes #686 from granthenke/compaction
2016-01-07 09:57:35 -08:00
Ismael Juma 4ad165c078 MINOR: Add information to upgrade notes
Credit to Gwen for some of the text.

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

Reviewers: Guozhang Wang <wangguoz@gmail.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #678 from ijuma/mirror-maker-compatibility-note
2015-12-15 20:57:05 -08:00
Magnus Edenhill 9a0e16397e MINOR: Documentation updates for reserved.broker.max.id
People are facing problems upgrading their clusters with configured broker IDs above 1000 due to `reserved.broker.max.id` which wasn't very well announced.

This PR attempts to improve that somewhat by fixing the broker config docs and adding a note to the upgrade documentation.

Author: Magnus Edenhill <magnus@edenhill.se>

Reviewers: Grant Henke <granthenke@gmail.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #670 from edenhill/docs-reserved.broker.max.id
2015-12-14 19:03:20 -08:00
Grant Henke 6cbd97597c KAFKA-2809; Improve documentation linking
Often it is useful to link to a specific header within the documentation. Especially when referencing docs in the mailing lists.

This adds anchors and links for all headers in the docs.

Author: Grant Henke <granthenke@gmail.com>

Reviewers: Jun Rao <junrao@gmail.com>

Closes #498 from granthenke/doc-links
2015-11-16 14:14:17 -08:00
Jun Rao 5d87eac856 additional trivial 0.9.0 doc changes 2015-11-13 14:18:02 -08:00
Gwen Shapira a8ccdc6154 KAFKA-2790: doc improvements
Author: Gwen Shapira <cshapi@gmail.com>

Reviewers: Jun Rao, Guozhang Wang

Closes #491 from gwenshap/KAFKA-2790
2015-11-11 10:54:09 -08:00
Guozhang Wang 15524d0970 KAFKA-2766: use new producer by default in tooling
Also update the API docs for new consumer.

Author: Guozhang Wang <wangguoz@gmail.com>

Reviewers: Gwen Shapira

Closes #448 from guozhangwang/K2766
2015-11-06 17:55:32 -08:00
Grant Henke fc4ef47910 KAFKA-2645: Document potentially breaking changes in the release note…
…s for 0.9.0

Author: Grant Henke <granthenke@gmail.com>

Reviewers: Gwen Shapira, Guozhang Wang

Closes #337 from granthenke/docs
2015-10-27 07:43:19 -07:00
Manikumar reddy O 4016011457 KAFKA-2425; Copy latest docs to kafka repo docs/ directory
This PR copies the latest kafka docs to kafka repo docs directory. Here I have copied 0.8.3/ directory contents from svn website repo to kafka/docs repository.

Some questions: This PR contains generated javadocs also.  Do we need to copy javadocs here?

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

Reviewers: Gwen Shapira, Ismael Juma

Closes #171 from omkreddy/KAFKA-2425-MOVE-DOCS-TO-KAFKA-REPO
2015-10-03 06:50:45 -07:00