apache / apache/fluss

[KV] Bump RocksDB version to 11.8.1

Open
#4,132 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
2.1k
Forks
625
Avg merge
3d 14h
Merged PRs (30d)
97

Description

### Search before asking

- [x] I searched in the [issues](https://github.com/apache/fluss/issues) and found nothing similar.

### Motivation

Fluss currently depends on `com.ververica:frocksdbjni:6.20.3-ververica-2.0`, which is based on RocksDB 6.20.3. We should bump RocksDB to `11.8.1` by switching to the first official release of the Fluss-maintained RocksDB JNI distribution: `io.github.fluss-contrib:fluss-rocksdbjni:11.8.1-fluss-2`.

The task should cover the dependency and Java package migration, as well as the API compatibility changes required by RocksDB 11.8.1. In particular:

- Replace the FRocksDB dependency and `org.rocksdb` imports with the Fluss RocksDB JNI artifact and `org.fluss.rocksdb` package.
- Adapt the TTL compaction filter and iterator APIs to their RocksDB 11.8.1 equivalents.
- Keep RocksDB checkpoint and incremental snapshot handling compatible with empty files such as newly generated WAL files.
- Update the bundled dependency notices.

The existing RocksDB KV, TTL compaction, and snapshot tests should pass with the new JNI artifact, and the Fluss client and server artifacts should no longer contain references to FRocksDB.

### Solution

_No response_

### Anything else?

_No response_

### Willingness to contribute

- [x] I'm willing to submit a PR!

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the FRocksDB dependency, org.rocksdb imports, and the existing RocksDB KV, TTL compaction, and snapshot tests. Migrate them to the Fluss RocksDB JNI artifact and package, update the dependency notices, and run those tests; done means client and server artifacts contain no FRocksDB references and snapshot handling still supports empty files.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
database
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.