Commit Graph

147 Commits

Author SHA1 Message Date
Florin Akermann 4a958c6cb1
Kafka-14748: Relax non-null FK left-join requirement (#14107)
Relax non-null FK left-join requirement.

Testing Strategy: Inject extractor which returns null on first or second element.

Reviewers: Walker Carlson <wcarlson@apace.org>
2023-12-05 18:04:32 -06:00
Florin Akermann b5c24974ae
Kafka 12317: Relax non-null key requirement in Kafka Streams (#14174)
[KIP-962](https://cwiki.apache.org/confluence/display/KAFKA/KIP-962%3A+Relax+non-null+key+requirement+in+Kafka+Streams)

The key requirments got relaxed for the followinger streams dsl operator:

left join Kstream-Kstream: no longer drop left records with null-key and call ValueJoiner with 'null' for right value.
outer join Kstream-Kstream: no longer drop left/right records with null-key and call ValueJoiner with 'null' for right/left value.
left-foreign-key join Ktable-Ktable: no longer drop left records with null-foreign-key returned by the ForeignKeyExtractor and call ValueJoiner with 'null' for right value.
left join KStream-Ktable: no longer drop left records with null-key and call ValueJoiner with 'null' for right value.
left join KStream-GlobalTable: no longer drop records when KeyValueMapper returns 'null' and call ValueJoiner with 'null' for right value.

Reviewers: Walker Carlson <wcarlson@apache.org>
2023-10-31 11:09:42 -05:00
Hanyu Zheng 834f72b03d
KAFKA-15527: Update docs and JavaDocs (#14600)
Part of KIP-985.

Updates JavaDocs for `RangeQuery` and `ReadOnlyKeyValueStore` with regard to ordering guarantees.
Updates Kafka Streams upgrade guide with KIP information.

Reviewer: Matthias J. Sax <matthias@confluent.io>
2023-10-26 17:48:28 -07:00
Matthias J. Sax 72fdd9f62a
MINOR: add KIP-941 to Kafka Streams upgrade docs (#14577)
Reviewers: Hao Li <hli@confluent.io>, Walker Carlson <wcarlson@confluent.io>, Bill Bejeck <bill@confluent.io>
2023-10-18 17:20:09 -07:00
Hao Li 4268e502ec
KAFKA-15022: [10/N] docs for rack aware assignor (#14181)
Reviewers: Matthias J. Sax <matthias@confluent.io>
2023-08-11 11:40:33 -07:00
Jim Galasyn f3ee9ff90f
MINOR: Add Streams API broker compatibility table (#13937)
Reviewers: Matthias J. Sax <matthias@confluent.io>
2023-07-11 12:24:40 -07:00
minjian.cai 49c1697ab0
MINOR: fix typos for doc (#13883)
Reviewers: Divij Vaidya <diviv@amazon.com>
2023-06-21 09:57:43 +02:00
Victoria Xia ced1f62c1b
KAFKA-14834: [13/N] Docs updates for versioned store semantics (#13622)
Reviewers: Matthias J. Sax <matthias@confluent.io>
2023-04-25 19:39:23 -07:00
Matthias J. Sax ecdef88f74
MINOR: updated KS release notes for 3.5 (#13577)
Reviewers: Walker Carlson <wcarlson@confluent.io>
2023-04-21 12:48:05 -07:00
Spacrocket 1f19696309
KAFKA-14722: Make BooleanSerde public (an addition of upgrade.html changes) (#13491)
Moved the information about the BooleanSerde addition from general upgrade notes to notes in Streams.

 Reviewers: Walker Carlson <wcarlson@confluent.io>, Divij Vaidya <diviv@amazon.com>
2023-04-13 15:37:42 -05:00
Victoria Xia 7c74f3983b
KAFKA-14491: [21/N] Docs updates for versioned state stores (#13444)
Add docs for KIP-889.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2023-04-12 11:31:27 -07:00
Farooq Qaiser 396536bb5a
KAFKA-12446: Call subtractor before adder if key is the same (#10747)
Implements KIP-904.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2023-04-10 13:27:04 -07:00
Luke Chen 3a804b8ca1
KAFKA-13439: move upgrade note to stream upgrade doc (#12008)
Reviewers: Matthias J. Sax <matthias@confluent.io>
2022-12-28 15:02:21 -08:00
Matthias J. Sax de088a2e97 MINOR: update Streams upgrade guide for 3.1 release (#12926)
Reviewers: John Roesler <john@confluent.io>, Bill Bejeck <bill@confluent.io>
2022-12-14 14:35:18 -05:00
Aleksandr Sorokoumov adf5cc5371
KAFKA-13769: Explicitly route FK join results to correct partitions (#11945)
Prior to this commit FK response sink routed FK results to
SubscriptionResolverJoinProcessorSupplier using the primary key.

There are cases, where this behavior is incorrect. For example,
if KTable key serde differs from the data source serde which might
happen without a key changing operation.

Instead of determining the resolver partition by serializing the PK
this patch includes target partition in SubscriptionWrapper payloads.
Default FK response-sink partitioner extracts the correct partition
from the value and routes the message accordingly.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2022-04-15 11:28:43 -07:00
Guozhang Wang fb2b131310
KAFKA-13172: Add downgrade guidance note for 3.0 (#11184)
Reviewers: Luke Chen <showuon@gmail.com>, Anna Sophie Blee-Goldman <ableegoldman@apache.org>, Bruno Cadonna <cadonna@confluent.io>
2021-08-17 17:03:11 -07:00
Jim Galasyn d88989d595
KQE-289: Replace SerDe with Serde (#11050)
Right now, we have scattered uses of `SerDes` throughout the docs. These should be updated to be `Serdes`, as that's what we commonly use now.

Reviewers: Boyang Chen <bchen11@outlook.com>
2021-08-01 17:00:57 -07:00
A. Sophie Blee-Goldman 7fbc6b73aa
KAFKA-13021: clarify KIP-633 javadocs and address remaining feedback (#11114)
There were a few followup things to address from #10926, most importantly a number of updates to the javadocs. Also includes a few missing verification checks.

Reviewers: Guozhang Wang <guozhang@confluent.io>, Matthias J. Sax <mjsax@apache.org>, Israel Ekpo
2021-07-23 16:14:37 -07:00
Guozhang Wang 3e3264760b
KAFKA-10847: Remove internal config for enabling the fix (#10941)
Also update the upgrade guide indicating about the grace period KIP and its indication on the fix with throughput impact.

Reviewers: Luke Chen <showuon@gmail.com>, Matthias J. Sax <mjsax@apache.org>
2021-07-15 10:58:15 -07:00
John Roesler bfdef11b97
KAFKA-12360: Document new time semantics (#11003)
Update the docs for task idling, since the semantics have
changed in 3.0.

Reviewers: Jim Galasyn <jim.galasyn@confluent.io>, Luke Chen <showuon@gmail.com>, Boyang Chen <boyang@apache.org>
2021-07-12 16:16:29 -05:00
A. Sophie Blee-Goldman 53f9b04176
MINOR: fix typo in config for eos-v2 docs of the upgrade guide (#11001)
One of the configs has a typo and should have been exactly_once _v2 rather than just exactly_once

Reviewers: John Roesler <vvcephei@apache.org>
2021-07-08 12:32:45 -07:00
leah d6918e427e
KAFKA-9559 add docs for changing default serde to null (#10988)
#10813 changed the default serde from ByteArraySerde as discussed in KIP-741. This adds proper documentation so users know to set a serde through the configs or explicitly pass one in.

Reviewers: Walker Carlson <wcarlson@confluent.io>, Anna Sophie Blee-Goldman <ableegoldman@apache.org>
2021-07-08 11:33:22 -07:00
Josep Prat 6655a09e99
KAFKA-12849: KIP-744 TaskMetadata ThreadMetadata StreamsMetadata as API (#10840)
Implementation of KIP-744.

Creates new Interfaces for TaskMetadata, ThreadMetadata, and
StreamsMetadata, providing internal implementations for each of them.

Deprecates current TaskMetadata, ThreadMetadata under o.a.k.s.processor,
and SreamsMetadata under a.o.k.s.state.

Updates references on internal classes from deprecated classes to new interfaces.

Deprecates methods on KafkaStreams returning deprecated ThreadMeatada and
StreamsMetadata, and provides new ones returning the new interfaces.

Update Javadocs referencing to deprecated classes and methods to point
to the right ones.

Co-authored-by: Bruno Cadonna <cadonna@apache.org>

Reviewers: Anna Sophie Blee-Goldman <ableegoldman@apache.org>, Bruno Cadonna <cadonna@apache.org>
2021-06-25 18:31:49 +02:00
A. Sophie Blee-Goldman bbe170af70
MINOR: deprecate TaskMetadata constructor and add KIP-740 notes to upgrade guide (#10755)
Quick followup to KIP-740 to actually deprecate this constructor, and update the upgrade guide with what we changed in KIP-740. I also noticed the TaskId#parse method had been modified previously, and should be re-added to the public TaskId class. It had no tests, so now it does

Reviewers: Matthias J. Sax <mjsax@confluent.io>, Luke Chen <showuon@gmail.com>
2021-05-26 10:35:12 -07:00
Daniyar Yeralin 6d1ae8bc00
KAFKA-8326: Introduce List Serde (#6592)
Introduce List serde for primitive types or custom serdes with a serializer and a deserializer according to KIP-466

Reviewers: Anna Sophie Blee-Goldman <ableegoldman@apache.org>, Matthias J. Sax <mjsax@conflunet.io>, John Roesler <roesler@confluent.io>, Michael Noll <michael@confluent.io>
2021-05-13 15:54:00 -07:00
Vito Jeng fae0784ce3
KAFKA-5876: KIP-216 Part 4, Apply InvalidStateStorePartitionException for Interactive Queries (#10657)
KIP-216, part 4 - apply InvalidStateStorePartitionException

Reviewers: Anna Sophie Blee-Goldman <ableegoldman@apache.org>
2021-05-10 17:29:58 -07:00
Matthias J. Sax 6a5992a814
KAFKA-8531: Change default replication factor config (#10532)
Implements KIP-733

Reviewers: A. Sophie Blee-Goldman <sophie@confluent.io>
2021-05-05 16:16:06 -07:00
Vito Jeng 816f5c3b86
KAFKA-5876: KIP-216 Part 3, Apply StreamsNotStartedException for Interactive Queries (#10597)
KIP-216 Part 3: Throw StreamsNotStartedException if KafkaStreams state is CREATED

Reviewers: Anna Sophie Blee-Goldman <ableegoldman@apache.org>
2021-05-03 13:53:35 -07:00
Guozhang Wang 3ec6317ee6
KAFKA-12683: Remove deprecated UsePreviousTimeOnInvalidTimestamp (#10557)
Reviewers: Anna Sophie Blee-Goldman <ableegoldman@apache.org>
2021-05-01 08:31:41 -07:00
A. Sophie Blee-Goldman 3805f3706f
KAFKA-12574: KIP-732, Deprecate eos-alpha and replace eos-beta with eos-v2 (#10573)
Deprecates the following 

1. StreamsConfig.EXACTLY_ONCE
2. StreamsConfig.EXACTLY_ONCE_BETA
3. Producer#sendOffsetsToTransaction(Map offsets, String consumerGroupId)

And introduces a new StreamsConfig.EXACTLY_ONCE_V2 config. Additionally, this PR replaces usages of the term "eos-beta" throughout the code with the term "eos-v2"

Reviewers: Matthias J. Sax <mjsax@confluent.io>
2021-04-28 13:22:15 -07:00
Vito Jeng c972ac929e
KAFKA-5876: Apply UnknownStateStoreException for Interactive Queries (#9821)
KIP-216: IQ should throw different exceptions for different errors, Part 2

Reviewers: Matthias J. Sax <mjsax@confluent.io>, Anna Sophie Blee-Goldman <ableegoldman@apache.org>, Bruno Cadonna <cadonna@confluent.io>
2021-04-23 12:09:32 -07:00
Guozhang Wang 035449eb55
KAFKA-12633: Remove deprecated APIs in TopologyTestDriver (#10508)
As well as related test classes.

Reviewers: John Roesler <vvcephei@apache.org>
2021-04-18 10:46:01 -07:00
A. Sophie Blee-Goldman c608d8480e
KAFKA-7606: Remove deprecated options from StreamsResetter (#10411)
Remove deprecated --zookeeper and --execute flags

Reviewers: Matthias J. Sax <mjsax@confluent.io>
2021-04-12 18:24:18 -07:00
Jorge Esteban Quilcate Otoya db0323e9ba
KAFKA-12449: Remove deprecated WindowStore#put (#10293)
Removes `WindowStore#put(K,V)` that was deprecated via KIP-474.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2021-04-09 11:49:37 -07:00
Guozhang Wang d44e01be48 HOTFIX: add missing upgrade docs 2021-04-08 08:49:33 -07:00
Guozhang Wang 3ca5a3bb78
KAFKA-12568: Remove deprecated APIs in KStream, KTable and Joined (#10421)
This is related to KIP-307 / KIP-372 / KIP-479.

Reviewers: John Roesler <vvcephei@apache.org>
2021-04-07 17:38:43 -07:00
Marco Aurelio Lotz 33d0445b84
KAFKA-5146: remove Connect dependency from Streams module (#10131)
Reviewers: A. Sophie Blee-Goldman <sophie@confluent.io>, Ismael Juma <ismael@confluent.io>, Matthias J. Sax <matthias@confluent.io>
2021-04-06 17:47:52 -07:00
Walker Carlson e971d94eb3
KAFKA-8784: remove default close for RocksDBConfigSetter (#10416)
Remove the default close implementation for RocksDBConfigSetter to avoid accidental memory leaks via C++ backed objects which are constructed but not closed by the user

Reviewers: Anna Sophie Blee-Goldman <ableegoldman@apache.org>
2021-03-29 14:26:39 -07:00
Guozhang Wang d5fd491bf7
KAFKA-7106: remove deprecated Windows APIs (#10378)
1. Remove all deprecated APIs in KIP-328.
2. Remove deprecated APIs in Windows in KIP-358.

Reviewers: John Roesler <vvcephei@apache.org>
2021-03-28 12:33:40 -07:00
Guozhang Wang b8058829bb
KAFKA-12562: Remove deprecated APIs in KafkaStreams and returned state classes (#10412)
Reviewers: A. Sophie Blee-Goldman <sophie@confluent.io>
2021-03-28 12:20:31 -07:00
Matthias J. Sax bd9a5da9d1
MINOR: update Streams upgrade notes with removed APIs (#10420)
Reviewer: Guozhang Wang <guozhang@confluent.io>
2021-03-28 11:36:42 -07:00
Guozhang Wang 7071ded2a6
KAFKA-12524: Remove deprecated segments() (#10379)
Reviewers: Boyang Chen <boyang@confluent.io>
2021-03-23 21:05:42 -07:00
vamossagar12 8bd0e218d8
MINOR: Add release documentation for KIP-614 (#10051)
Reviewers: Bruno Cadonna <bruno@confluent.io>, John Roesler <vvcephei@apache.org>
2021-02-24 13:34:38 -06:00
A. Sophie Blee-Goldman 0605b690e9
MINOR: document restriction against running multiple Streams apps on same state.dir (#10187)
Reviewers: Leah Thomas <lthomas@confluent.io>, Almog Gavra <almog@confluent.io>, Guozhang Wang <wangguoz@gmail.com>
2021-02-23 08:39:19 -08:00
Matthias J. Sax b35ca4349d
KAFKA-9274: Throw TaskCorruptedException instead of TimeoutException when TX commit times out (#10072)
Part of KIP-572: follow up work to PR #9800. It's not save to retry a TX commit after a timeout, because it's unclear if the commit was successful or not, and thus on retry we might get an IllegalStateException. Instead, we will throw a TaskCorruptedException to retry the TX if the commit failed.

Reviewers: A. Sophie Blee-Goldman <sophie@confluent.io>
2021-02-19 13:36:07 -08:00
Jim Galasyn da58ce4065
MINOR: Clarify config names for EOS versions 1 and 2 (#9670)
Reviewers: Boyang Chen <boyang@confluent.io>, Matthias J. Sax <matthias@confluent.io>
2021-02-16 17:11:24 -08:00
Matthias J. Sax d01d97ed66
MINOR: add docs for KIP-680 (#10048)
Reviewers: Bill Bejeck <bill@confluent.io>, Jim Galasyn <jim.galasyn@confluent.io>
2021-02-04 20:18:20 -08:00
leah f5a2fbac6d
KAFKA-10366 & KAFKA-9649: Implement KIP-659 to allow TimeWindowedDeserializer and TimeWindowedSerde to handle window size (#9253)
See KIP details and discussions here: https://cwiki.apache.org/confluence/display/KAFKA/KIP-659%3A+Improve+TimeWindowedDeserializer+and+TimeWindowedSerde+to+handle+window+size

Deprecates methods that allow users to skip setting a window size when one is needed. Adds a window size streams config to allow the timeWindowedDeserializer to calculate window end time.

Reviewers: Walker Carlson <wcarlson@confluent.io>, John Roesler <vvcephei@apache.org>, Guozhang Wang <wangguoz@gmail.com>
2021-02-01 16:20:35 -08:00
Walker Carlson eff51a82f2
MINOR: update docs for KIP-663, KIP-696, and KIP-671 (#9969)
Co-authored-by: Bruno Cadonna <bruno@confluent.io>

Reviewers: Jim Galasyn <jim.galasyn@confluent.io>, Matthias J. Sax <matthias@confluent.io>, Guozhang Wang <guozhang@confluent.io>, Bruno Cadonna <bruno@confluent.io>
2021-01-29 09:00:56 -08:00
leah 6c8033abf3
MINOR: Add docs for StreamJoined changes (#9951)
Add docs for KIP-689.

Reviewers: Jim Galasyn <jim.galasyn@confluent.io>, Matthias J. Sax <matthias@confluent.io>
2021-01-26 11:38:13 -08:00