You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Matthias J. Sax (Jira)" <ji...@apache.org> on 2025/09/04 23:39:00 UTC

[jira] [Commented] (KAFKA-19668) processValues() must be declared as value-changing operation

    [ https://issues.apache.org/jira/browse/KAFKA-19668?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18018250#comment-18018250 ] 

Matthias J. Sax commented on KAFKA-19668:
-----------------------------------------

Do not break backward compatibility, we decided to not enable this fix by default in AK 4.0.1 and 4.1.1 releases, and will do some follow up work for AK 4.2.0 for allow us to enable the fix by default there.

> processValues() must be declared as value-changing operation
> ------------------------------------------------------------
>
>                 Key: KAFKA-19668
>                 URL: https://issues.apache.org/jira/browse/KAFKA-19668
>             Project: Kafka
>          Issue Type: Bug
>          Components: streams
>    Affects Versions: 3.3.0
>            Reporter: Matthias J. Sax
>            Assignee: Matthias J. Sax
>            Priority: Blocker
>             Fix For: 4.0.1, 4.2.0, 4.1.1
>
>
> When adding `KStreams#processValues()` we missed to declare the operation as "value changing". This can lead to an "incorrectly" built topology.
> The main problem is, that `processValues()` is the replacement of `transformValues()` which we removed with AK 4.0.0 release. Thus, if users rewrite existing programs from `transformValues()` to the new `processValues()` (what will be required when upgrading to 4.x release), they might observe this change as a regression.
> The impact of the changed topology is, that local state is effectively lost, and must be restored from the changelog topic, resulting in downtime after an upgrade.
> Note: the bug does only surface, if topology optimization is used, in particular the "merge repartition topics" rewrite.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)