apache / apache/fluss

[server] complete delayed fetch operations after produce to reduce fetch latency

Open
#3,455 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.

### Description

### Problem:

Currently, when a TabletServer processes a produce request (appendRecordsToLog), it does not proactively trigger completion checks for pending delayed fetch operations. Delayed fetch requests (e.g., from followers or consumers waiting for new data) can only be completed by timeout or by a subsequent passive checkAndComplete call. This means that even after data has been successfully written, waiting fetch requests still experience unnecessary latency before receiving the new data.

### Expected Behavior:

After a successful produce, the server should immediately attempt to complete any delayed fetch operations that are waiting on the affected buckets, minimizing fetch latency for followers and consumers.

### Willingness to contribute

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

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at the TabletServer appendRecordsToLog path and trace how delayed fetch operations are checked through checkAndComplete. Identify the affected buckets and the existing completion flow, then verify that a successful produce immediately attempts completion for waiting followers or consumers and that fetch latency is reduced without relying on timeout.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend, distributed-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.