Commit Graph

16012 Commits

Author SHA1 Message Date
Lianet Magrans be816b82d2 Bump version to 4.1.1 2025-10-26 14:49:20 -04:00
Lianet Magrans 14f94c75ad Revert "Bump version to 4.1.1"
This reverts commit b5b09d76de.
2025-10-26 11:53:34 -04:00
Luke Chen 599e4a9020 MINOR: Improve some requests/responses toString method (#20759)
Improve some requests/responses toString method to log only the
required
info, including the request.Builder toString methods.
1. AlterConfigsRequest
2. AlterUserScramCredentialsRequest
3. ExpireDelegationTokenRequest
4. IncrementalAlterConfigsRequest
5. RenewDelegationTokenRequest
6. SaslAuthenticateRequest
7. createDelegationTokenResponse
8. describeDelegationTokenResponse
9. SaslAuthenticateResponse

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Manikumar Reddy
 <manikumar@confluent.io>
2025-10-25 22:58:27 +08:00
majialong 6ffc58bf8f MINOR: Fix time comparison with appendLingerMs in CoordinatorRuntime#maybeFlushCurrentBatch (#20739)
This PR fixed the time comparison logic in
`CoordinatorRuntime#maybeFlushCurrentBatch` to ensure that the batch is
flushed when the elapsed time since `appendTimeMs` exceeds the
`appendLingerMs` parameter.

This issue is also mentioned [here](
https://github.com/apache/kafka/pull/20653/files#r2442452104).

Reviewers: David Jacot <djacot@confluent.io>, Chia-Ping Tsai
 <chia7712@gmail.com>
2025-10-25 02:08:55 +08:00
Lianet Magrans b5b09d76de Bump version to 4.1.1 2025-10-23 10:15:25 -04:00
Lan Ding 4099f75e55 MINOR: Suppress warning logs for UnsupportedVersionException in ClientTelemetryReporter (#20722)
see https://github.com/apache/kafka/pull/20661/files#r2433576874
Suppress warning logs for `UnsupportedVersionException` in
`ClientTelemetryReporter`.

Reviewers: Andrew Schofield <aschofield@confluent.io>
2025-10-22 14:50:31 +08:00
Lianet Magrans 8b1c89ce06
MINOR: update 4.1 docs with 4.1.1 notable changes (#20742)
Add critical fixes to notable changes section

Reviewers: Matthias J. Sax <matthias@confluent.io>
2025-10-21 14:23:13 -04:00
Mickael Maison f0c02d94d4 KAFKA-19758: Preferably use the connector classloader when loading pl… (#20675)
…ugins if it has the correct version

Reviewers: Greg Harris <gharris1727@gmail.com>, Fiore Mario Vitale <mvitale86@gmail.com>, Snehashis Pal <snehashisp1995@gmail.com>
2025-10-20 19:54:39 +02:00
Fatih 243a308e4b KAFKA-19724: Global stream thread should not ignore any exceptions (#20668)
Kafka Streams does not catch Error types that occur during
`GlobalStreamThread` initiation, and therefore it is not possible to
trace the error (for example, an `ExceptionInInitializerError` occurs
when RocksDB is not found for a global store). This is because errors
are not caught and logged.

The catch block in `GlobalStreamThread#initialize()` has been ensured to
catch `Throwable` instead of `Exception`. Additionally, the empty
`setUncaughtHandler` set operation that prevented this from taking
effect when users employed setUncaughtExceptionHandler has been removed.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2025-10-16 22:22:16 -07:00
Shashank 631f56ed5d KAFKA-19479: at_least_once mode in Kafka Streams silently drops messages when the producer fails with MESSAGE_TOO_LARGE, violating delivery guarantees (#20285)
Bug Fix in Producer where flush() does not wait for a batch to complete after splitting.

Cf - https://github.com/apache/kafka/pull/20254#issuecomment-3363498212
and [KAFKA-19479](https://issues.apache.org/jira/browse/KAFKA-19479) for
more details

Reviewers: Jun Rao <junrao@gmail.com>
2025-10-16 21:28:52 -07:00
Izzy Harker c432167fe2 KAFKA-19760: RecordTooLargeExceptions in group coordinator when offsets.topic.compression.codec is used (#20653)
CI / build (push) Has been cancelled Details
The group coordinator has been having issues with unknown errors. The
theory is that this is caused by optimistic compression estimates which
cause unchecked batch overflows when trying to write.

This PR adds a check for uncompressed record size to flush batches more
eagerly and avoid overfilling partially-full batches. This should make
the group coordinator errors less frequent.

Also added tests to ensure this change does not impact desired behavior
for large compressible records.

Reviewers: Sean Quah <squah@confluent.io>, David Jacot <djacot@confluent.io>
2025-10-16 11:12:38 +02:00
Nikita Shupletsov 6fa6fc574c KAFKA-19775: Don't fail if nextOffsetsAndMetadataToBeConsumed is not available. (#20665)
Before we added caching for consumer next offsets we'd called
`mainConsumer.position` and always expected something back. When we
added the caching, we kept the check that we always have nextOffset, but
as the logic changed to fetching the offsets from poll, we may not have
anything for topics that have no messages. This PR accounts for that.

Reviewers: Lucas Brutschy <lbrutschy@confluent.io>, Matthias J. Sax
 <matthias@confluent.io>
2025-10-15 21:30:04 -07:00
Manikumar Reddy 45980a2d4b MINOR: Update OffsetResetStrategy Javadoc (#20701)
CI / build (push) Waiting to run Details
updates the Javadoc for
`org.apache.kafka.clients.consumer.OffsetResetStrategy` to clearly state
that it is deprecated for removal with no replacement.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2025-10-15 10:40:10 +05:30
Shivsundar R e76f273cc7
KAFKA-19485: Added check before sending acknowledgements on initial epoch. (#20135)(Cherry-pick) (#20670)
CI / build (push) Has been cancelled Details
*What*
https://issues.apache.org/jira/browse/KAFKA-19485

**Bug :**
There is a bug in `ShareConsumeRequestManager` where we are adding
acknowledgements on initial `ShareSession` epoch even after checking for
it.
Added fix to only include acknowledgements in the request if we have to,

PR also adds the check at another point in the code where we could
potentially be sending such acknowledgements.  One of the cases could be
when metadata is refreshed with empty topic IDs after a broker restart.
This means leader information would not be available on the node.

- Consumer subscribed to a partition whose leader was node-0.
- Broker restart happens and node-0 is elected leader again. Broker
starts a new `ShareSession`.
- Background thread sends a fetch request with **non-zero** epoch.
- Broker responds with `SHARE_SESSION_NOT_FOUND`.
- Client updates session epoch to 0 once it receives this error.
- Client updates metadata but receives empty metadata response. (Leader
unavailable)
- Application thread processing the previous fetch, completes and sends
acks to piggyback on next fetch.
- Next fetch will send the piggyback acknowledgements on the fetch for
previously subscribed partitions resulting in error from broker
("`Acknowledge data present on initial epoch`"). (Currently we attempt
to send even if leader is unavailable).

**Fix** :  Add a check before sending out acknowledgments if we are on
an initial epoch.
Added unit test covering the above scenario.

Reviewers: Andrew Schofield <aschofield@confluent.io>
2025-10-13 13:28:35 +01:00
Bill Bejeck aceb32d15e KAFKA-19747: Update ClientTelemetryReporter telemetry push error handling (#20661)
CI / build (push) Has been cancelled Details
When a failure occurs with a push telemetry request, any exception is
treated as fatal, increasing the time interval to `Integer.MAX_VALUE`
effectively turning telemetry off.  This PR updates the error handling
to check if the exception is a transient one with expected recovery and
keeps the telemetry interval value the same in those cases since a
recovery is expected.

Reviewers: Apoorv Mittal <apoorvmittal10@gmail.com>, Matthias
 Sax<mjsax@apache.org>
2025-10-09 16:48:12 -04:00
Nikita Shupletsov 6c8223c6a4 KAFKA-19510: clear pendingTasksToInit on tasks clear. (#20646)
CI / build (push) Waiting to run Details
Clear pendingTasksToInit on tasks clear.  It matters in situations when
we shutting down a thread in PARTITIONS_ASSIGNED state. In this case we
may have locked some unassigned task directories (see
TaskManager#tryToLockAllNonEmptyTaskDirectories). Then we may have
gotten assigned to one or multiple of those tasks. In this scenario,  we
will not release the locks for the unassigned task directories (see
TaskManager#releaseLockedUnassignedTaskDirectories), because
TaskManager#allTasks includes pendingTasksToInit, but it hasn't been
cleared.

Reviewers: Matthias J. Sax <matthias@confluent.io>, Lucas Brutschy
 <lbrutschy@confluent.io>
2025-10-08 14:45:51 -07:00
Lucas Brutschy 606297f899 MINOR: Fix StreamsRebalanceListenerInvoker (#20575)
CI / build (push) Waiting to run Details
StreamsRebalanceListenerInvoker was implemented to match the behavior of
ConsumerRebalanceListenerInvoker, however StreamsRebalanceListener has a
subtly different interface than ConsumerRebalanceListener - it does not
throw exceptions, but returns it as an Optional.

In the interest of consistency, this change fixes this mismatch by
changing the StreamsRebalanceListener interface to behave more like the
ConsumerRebalanceListener - throwing exceptions directly.

In another minor fix, the StreamsRebalanceListenerInvoker is changed to
simply skip callback execution instead of throwing an
IllegalStateException when no streamRebalanceListener is defined. This
can happen when the consumer is closed before Consumer.subscribe is
called.

Reviewers: Lianet Magrans <lmagrans@confluent.io>, Matthias J. Sax
 <matthias@confluent.io>
2025-10-08 11:29:52 +02:00
Calvin Liu 4369d8e07e
MINOR: simplify last known elr update (#20655)
Backport #20629 to 4.1 branch

Simplify the last known elr update logic. This way can make a more
robust logic.

Reviewers: Jun Rao <junrao@gmail.com>, Chia-Ping Tsai
 <chia7712@gmail.com>
2025-10-08 16:25:21 +08:00
Apoorv Mittal 0827b19ca3
MINOR: Moving the rollback out of lock in share partition (#20153) (#20651)
CI / build (push) Waiting to run Details
Moving rollback out of lock, if persister returns a completed future for
write state then same data-plane-request-handler thread should not call
purgatory safeTryAndComplete while holding SharePartition's write lock.

Reviewers: Andrew Schofield <aschofield@confluent.io>, Abhinav Dixit
 <adixit@confluent.io>
2025-10-07 20:24:37 +01:00
Lucas Brutschy 6c1ec56436 KAFKA-19694: Trigger StreamsRebalanceListener in Consumer.close (#20511)
In the consumer, we invoke the consumer rebalance onPartitionRevoked or
onPartitionLost callbacks, when the consumer closes. The point is that
the application may want to commit, or wipe the state if we are closing
unsuccessfully.

In the StreamsRebalanceListener, we did not implement this behavior,
which means when closing the consumer we may lose some progress, and in
the worst case also miss that we have to wipe our local state state
since we got fenced.

In this PR we implement StreamsRebalanceListenerInvoker, very similarly
to ConsumerRebalanceListenerInvoker and invoke it in Consumer.close.

Reviewers: Lianet Magrans <lmagrans@confluent.io>, Matthias J. Sax
 <matthias@confluent.io>, TengYao Chi <frankvicky@apache.org>,
 Uladzislau Blok <123193120+UladzislauBlok@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-07 09:48:18 -07:00
Apoorv Mittal 978672b724
KAFKA-19436: Restrict cache update for ongoing batch/offset state (#20041) (#20647)
CI / build (push) Waiting to run Details
Cherry-pick commit from
https://github.com/apache/kafka/commit/96ef1c520a

In the stress testing it was noticed that on acquisition lock timeout,
some offsets were not found in the cache. The cache can be tried to be
updated in different acknowledgement calls hence if there is an ongoing
transition which is not yet finished but another parallel
acknowledgement triggers the cache update then the cache can be updated
incorrectly, while first transition is not yet finished.

Though the cache update happens for Archived and Acknowldeged records
hence this issue or existing implementation should not hamper the queues
functionality. But it might update the cache early when persister call
might fail or this issue triggers error logs with offset not found in
cache when acquisition lock timeouts (in some scenarios).

Reviewers: Abhinav Dixit <adixit@confluent.io>, Andrew Schofield
 <aschofield@confluent.io>
2025-10-07 14:45:58 +01:00
Matthias J. Sax ce248ab0d6 KAFKA-19748: fix metrics leak in Kafka Streams (#20633)
CI / build (push) Has been cancelled Details
This PR fixes a leak in StreamsMetricImpl not removing a
store-level-metric correctly, and thus leaking objects.

Reviewers: Eduwer Camacaro <eduwerc@gmail.com>, Bill Bejeck
 <bbejeck@apache.org>
2025-10-03 15:31:43 -07:00
Ritika Reddy a10c1f3ea1
KAFKA-19690 Add epoch check before verification guard check to prevent unexpected fatal error (#20618)
CI / build (push) Has been cancelled Details
Cherry-pick changes (#20534) to 4.1

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-10-02 21:18:34 +08:00
Genseric Ghiro ea3d231185
[MINOR] Cleaning ignored streams test (#20583)
CI / build (push) Waiting to run Details
- This test has been disabled for years + it tests ZK setup, but with
KRaft there is no more a "controller", so cleaning it up.
2025-10-01 13:39:38 -04:00
Kevin Wu 012e4ca6d8
KAFKA-19719 --no-initial-controllers should not assume kraft.version=1 (#20604)
CI / build (push) Has been cancelled Details
```
commit ec37eb538b (HEAD ->
KAFKA-19719-cherry-pick-41, origin/KAFKA-19719-cherry-pick-41)
Author: Kevin Wu <kevin.wu2412@gmail.com>
Date:   Thu Sep 25 11:56:16 2025 -0500

    KAFKA-19719: --no-initial-controllers should not assume
kraft.version=1 (#20551)

    Just because a controller node sets --no-initial-controllers flag
does     not mean it is necessarily running kraft.version=1. The more
precise     meaning is that the controller node being formatted does not
know what     kraft version the cluster should be in, and therefore it
is only safe to     assume kraft.version=0. Only by setting
--standalone,--initial-controllers, or --no-initial-controllers     AND
not specifying the controller.quorum.voters static config, is it
known kraft.version > 0.

    For example, it is a valid configuration (although confusing) to run
a     static   quorum defined by controller.quorum.voters but have all
the     controllers   format with --no-initial-controllers. In this
case,     specifying --no-initial-controllers alongside a metadata
version that     does not  support kraft.version=1 causes formatting to
fail, which is     does not  support kraft.version=1 causes formatting
to fail, which is     a  regression.

    Additionally, the formatter should not check the kraft.version
against     the release version, since kraft.version does not actually
depend on any     release version. It should only check the
kraft.version against the     static voters config/format arguments.

    This PR also cleans up the integration test framework to match the
semantics of formatting an actual cluster.

    Reviewers: TengYao Chi <kitingiao@gmail.com>, Kuan-Po Tseng
<brandboat@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>, José Armando
García Sancio <jsancio@apache.org>      Conflicts:
core/src/main/scala/kafka/tools/StorageTool.scala Minor conflicts. Keep
changes from cherry-pick.
core/src/test/java/kafka/server/ReconfigurableQuorumIntegrationTest.java
Remove auto-join tests, since 4.1 does not support it. docs/ops.html
Keep docs section from cherry-pick.
metadata/src/test/java/org/apache/kafka/metadata/storage/FormatterTest.java
Minor conflicts. Keep cherry-picked changes.
test-common/test-common-runtime/src/main/java/org/apache/kafka/common/test/KafkaClusterTestKit.java
Conflicts due to integration test framework changes. Keep new changes.

commit 02d58b176c (upstream/4.1)
```

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-09-30 22:30:23 +08:00
Masahiro Mori 7f8c2a5fc9 MINOR: Refactor LockUtils and improve comments (follow up to KAFKA-19390) (#20131)
This PR performs a refactoring of LockUtils and improves inline
comments, as a follow-up to https://github.com/apache/kafka/pull/19961.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Jun Rao <junrao@gmail.com>
2025-09-30 21:27:14 +08:00
Masahiro Mori 807866ca6d KAFKA-19390: Call safeForceUnmap() in AbstractIndex.resize() on Linux to prevent stale mmap of index files (#19961)
https://issues.apache.org/jira/browse/KAFKA-19390

The AbstractIndex.resize() method does not release the old memory map
for both index and time index files.  In some cases, Mixed GC may not
run for a long time, which can cause the broker to crash when the
vm.max_map_count limit is reached.

The root cause is that safeForceUnmap() is not being called on Linux
within resize(), so we have changed the code to unmap old mmap on all
operating systems.

The same problem was reported in
[KAFKA-7442](https://issues.apache.org/jira/browse/KAFKA-7442), but the
PR submitted at that time did not acquire all necessary locks around the
mmap accesses and was closed without fixing the issue.

Reviewers: Jun Rao <junrao@gmail.com>
2025-09-30 21:26:59 +08:00
Mickael Maison f4ce123505 MINOR: Cleanups in ops docs (#20532)
CI / build (push) Has been cancelled Details
- Fix typo in `process.role`
- Fix formatting of quorum description commands

Reviewers: Lan Ding <isDing_L@163.com>, Ken Huang <s7133700@gmail.com>,
TengYao Chi <frankvicky@apache.org>
2025-09-28 19:14:02 +08:00
Kuan-Po Tseng 9575cbbc80 MINOR: update kraft dynamic voter set doc (#20401)
Update the KRaft dynamic voter set documentation. In Kafka 4.1, we
introduced a powerful new feature that enables seamless migration from a
static voter set to a dynamic voter set.

Reviewers: Ken Huang <s7133700@gmail.com>, TengYao Chi
<kitingiao@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>
2025-09-28 19:13:00 +08:00
Sean Quah b14efd8750
KAFKA-19732, KAFKA-19716: Clear out coordinator snapshots periodically while loading (#20591)
When nested Timeline collections are created and discarded while loading
a coordinator partition, references to them accumulate in the current
snapshot. Allow the GC to reclaim them by starting a new snapshot and
discarding previous snapshots every 16,384 records.

Small intervals degrade loading times for non-transactional offset
commit workloads while large intervals degrade loading times for
transactional workloads. A default of 16,384 was chosen as a compromise.

Cherry pick of d067c6c040.

Reviewers: David Jacot <djacot@confluent.io>
2025-09-26 11:01:16 +02:00
Dongnuo Lyu e76213e182
KAFKA-19546: Rebalance should be triggered by subscription change during group protocol downgrade (#20581)
Cherry-pick KAFKA-19546 to 4.1.

During online downgrade, when a static member using the consumer
protocol which is also the last member using the consumer protocol is
replaced by another static member using the classic protocol with the
same instance id, the latter will take the assignment of the former and
an online downgrade will be triggered.

In the current implementation, if the replacing static member has a
different subscription, no rebalance will be triggered when the
downgrade happens. The patch checks whether the static member has
changed subscription and triggers a rebalance when it does.

Reviewers: Sean Quah <squah@confluent.io>, David Jacot <djacot@confluent.io>
2025-09-26 11:00:23 +02:00
Lianet Magrans 02d58b176c KAFKA-19418: Fix for flaky verifiable producer system test (#20001)
Fix to avoid flakiness in verifiable producer system test. The test
lists running processes and greps to find the VerifiableProducer one,
but wasn't providing an specific pattern to grep (so flaky if there were
more than one process containing the default grep pattern "kafka")

Fix by passing a "proc_grep_string"  to filter when looking for the
VerifiableProducer process.

All test pass successfully after the change.

Reviewers: PoAn Yang <payang@apache.org>, Andrew Schofield
<aschofield@confluent.io>
2025-09-23 20:26:11 -04:00
Matthias J. Sax eeafe0a101 MINOR: fix incorrect offset reset logging (#20558)
We need to only pass in the reset strategy, as the `logMessage`
parameter was removed.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Lucas Brutschy
 <lbrutschy@confluent.io>
2025-09-22 15:28:39 -07:00
Sushant Mahajan 93c4dc1d27
KAFKA-19695: Fix bug in redundant offset calculation. (#20516) (#20519)
Cherry pick ff5025a21c

Reviewers: Andrew Schofield <aschofield@confluent.io>, Apoorv Mittal
 <apoorvmittal10@gmail.com>
2025-09-11 12:42:50 +01:00
Nikita Shupletsov 373848449a KAFKA-19679: Fix NoSuchElementException in oldest open iterator metric (#20512)
Querying the oldest-open-iterator metric can result in a
NoSuchElementException when the last open iterator gets removed, due to
a race condition between the query and the metric update.

To avoid this race condition, this PR caches the metric result, to avoid
accessing the list of open iterator directly.  We don't need to clear
this cache, because the entire metric is removed when the last iterator
gets removed.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2025-09-09 21:22:45 -07:00
Shashank 67a5af83de KAFKA-15307: Kafka Streams configuration docs outdated (#20408)
Added new section for window serdes and update Streams configuration
page accordingly.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2025-09-08 17:37:53 -07:00
Matthias J. Sax a1ffe5b6d2 KAFKA-19668: update upgrade docs (#20484)
Docs change for KAFKA-19668 bug fix.

Reviewers: Bill Bejeck <bill@confluent.io>, Lucas Brutschy
<lbrutschy@confluent.io>
2025-09-08 13:34:10 -07:00
Matthias J. Sax ed6472bcf3 KAFKA-19668: processValue() must be declared as value-changing operation (#20470)
With "merge.repartition.topic" optimization enabled, Kafka Streams tries
to push repartition topics upstream, to be able to merge multiple
repartition topics from different downstream branches together.

However, it is not safe to push a repartition topic if the parent node
is value-changing: because of potentially changing data types, the
topology might become invalid, and fail with serde error at runtime.

The optimization itself work correctly, however, processValues() is not
correctly declared as value-changing, what can lead to invalid
topologies.

Reviewers: Bill Bejeck <bill@confluent.io>, Lucas Brutschy
 <lbrutschy@confluent.io>
2025-09-05 18:02:22 -07:00
Mickael Maison 48f97a480c MINOR: Update 4.1 branch version to 4.1.1-SNAPSHOT 2025-09-02 14:52:33 +02:00
Mickael Maison 13f70256db Bump version to 4.1.0 2025-08-27 10:19:21 +02:00
Mickael Maison 70dd1ca2ca Revert "Bump version to 4.1.0"
This reverts commit 23b64404ae.
2025-08-27 10:15:18 +02:00
Chang-Chi Hsu 8de88db65a
KAFKA-19642 Replace dynamicPerBrokerConfigs with dynamicDefaultConfigs (#20405)
- **Changes**: Replace misused dynamicPerBrokerConfigs with
dynamicDefaultConfigs
- **Reasons**: KRaft servers don't handle the cluser-level configs in
starting

from: https://github.com/apache/kafka/pull/18949/files#r2296809389

Reviewers: Jun Rao <junrao@gmail.com>, Jhen-Yung Hsu
<jhenyunghsu@gmail.com>, PoAn Yang <payang@apache.org>, Chia-Ping Tsai
<chia7712@gmail.com>

---------

Co-authored-by: PoAn Yang <payang@apache.org>
2025-08-27 14:34:58 +08:00
Lucas Brutschy 500bd70a29 KAFKA-19429: Deflake streams_smoke_test, again (#20070)
It looks like we are checking for properties that are not guaranteed
under at_least_once, for example, exact counting (not allowing for
overcounting).

This change relaxes the validation constraint:

The TAGG topic contains effectively count-by-count results. So for
example, if we have the input without duplication

0 -> 1,2,3 we will get in TAGG 3 -> 1, since 1 key had 3 values.

with duplication:

0 -> 1,1,2,3 we will get in TAGG 4 -> 1, since 1 key had 4 values.

This makes the result difficult to compare. Since we run the smoke test
also with Exactly_Once, I propose to disable validation off TAGG under
ALOS.

Similarly, the topic AVG may overcount or undercount. The test case is
extremely similar to DIF, both performing a join and two streams, the
only difference being the mathematical operation performed, so we can
also disable this validation under ALOS with minimal loss of coverage.

Finally, the change fixes a bug that would throw a NPE when validation
of a windowed stream would fail.

Reviewers: Kirk True <kirk@kirktrue.pro>, Matthias J. Sax
 <matthias@confluent.io>
2025-08-25 16:08:10 -07:00
Mickael Maison abeebb3b3f MINOR: Update version to 4.1 in docs 2025-08-25 15:50:55 +02:00
Matthias J. Sax 35e5942743
Revert "KAFKA-13722: remove usage of old ProcessorContext (#18292)" (#20398)
This reverts commit f13a22af0b.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Eduwer Camacaro <eduwerc@gmail.com>, Mickael Maison <mickael.maison@gmail.com>,
2025-08-25 12:43:39 +02:00
Shashank 2dbed66c63 KAFKA-15307: Kafka Streams configuration docs outdated (#20329)
Updated Kafka Streams configuration documentation to stay latest with
version 4.0.0.

Reviewers: Matthias J. Sax <matthias@confluent.io>
2025-08-17 13:14:42 -07:00
Clemens Hutter f61a5a5b41 MINOR: Remove SPAM URL in Streams Documentation (#20321)
The previous URL http://lambda-architecture.net/ seems to now be controlled by spammers

Co-authored-by: Shashank <hsshashank.grad@gmail.com>
Reviewers: Mickael Maison <mickael.maison@gmail.com>
2025-08-13 12:06:22 -07:00
Matthias J. Sax d9be929f4a MINOR: add missing section to TOC (#20305)
Add new group coordinator metrics section to TOC.

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
2025-08-05 14:29:21 -07:00
Mickael Maison 23b64404ae Bump version to 4.1.0 2025-08-05 14:29:00 +02:00
Mickael Maison 6340f437cd Revert "Bump version to 4.1.0"
This reverts commit e14d849cbf.
2025-08-05 13:01:40 +02:00