This is an automated email from the ASF dual-hosted git repository.
clolov pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/trunk by this push:
new 3c965e4e0be KAFKA-20096: Add documentation about the incompatibility
of RocksDB file format (#21397)
3c965e4e0be is described below
commit 3c965e4e0bedefc14e2868b2a67622ead7bb6305
Author: Arpit Goyal <[email protected]>
AuthorDate: Tue Feb 10 01:13:54 2026 +0530
KAFKA-20096: Add documentation about the incompatibility of RocksDB file
format (#21397)
Document the limitation we have in RocksDB upgrade due to file format
version change.
Reviewers: Matthias J. Sax <[email protected]>
---
docs/streams/upgrade-guide.md | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/docs/streams/upgrade-guide.md b/docs/streams/upgrade-guide.md
index 6e5ccdd2325..46e579d72a5 100644
--- a/docs/streams/upgrade-guide.md
+++ b/docs/streams/upgrade-guide.md
@@ -53,7 +53,9 @@ Starting in version 4.0.0, Kafka Streams will only be
compatible when running ag
Downgrading from 3.5.x or newer version to 3.4.x or older version needs
special attention: Since 3.5.0 release, Kafka Streams uses a new serialization
format for repartition topics. This means that older versions of Kafka Streams
would not be able to recognize the bytes written by newer versions, and hence
it is harder to downgrade Kafka Streams with version 3.5.0 or newer to older
versions in-flight. For more details, please refer to
[KIP-904](https://cwiki.apache.org/confluence/x/P5VbD [...]
-Downgrading from 3.0.x or newer version to 2.8.x or older version needs
special attention: Since 3.0.0 release, Kafka Streams uses a newer RocksDB
version whose on-disk format changed. This means that old versioned RocksDB
would not be able to recognize the bytes written by that newer versioned
RocksDB, and hence it is harder to downgrade Kafka Streams with version 3.0.0
or newer to older versions in-flight. Users need to wipe out the local RocksDB
state stores written by the new version [...]
+Downgrading from 3.0.x or newer version to 2.8.x or older version needs
special attention: Since 3.0.0 release, Kafka Streams uses a newer RocksDB
version whose on-disk format changed. This means that old versioned RocksDB
would not be able to recognize the bytes written by that newer versioned
RocksDB, and hence it is harder to downgrade Kafka Streams with version 3.0.0
or newer to older versions in-flight. Users need to first delete the local
RocksDB state stores written by the new ver [...]
+
+Downgrading from 4.0.x or newer version to older than 4.0.0 needs special
attention: Since 4.0.0 release, Kafka Streams upgraded RocksDB from version
7.9.2 to 9.7.3. This upgrade introduces a RocksDB file format version change
from version 5 to version 6 (introduced in RocksDB 8.6). While the newer
RocksDB version (9.7.3) can read state stores written in the old format
(version 5), the older RocksDB versions cannot read state stores written in the
new format (version 6). This means that [...]
Kafka Streams does not support running multiple instances of the same
application as different processes on the same physical state directory.
Starting in 2.8.0 (as well as 2.7.1 and 2.6.2), this restriction will be
enforced. If you wish to run more than one instance of Kafka Streams, you must
configure them with different values for `state.dir`.