Skip to content

Conversation

@swuferhong
Copy link
Contributor

Purpose

Linked issue: close #1927

This pr is aims to fix LookupSender doesn't update bucket metadata when receive NotLeaderOrFollowerException in bucket level

Brief change log

Tests

API and Format

Documentation

Copy link
Contributor

@loserwang1024 loserwang1024 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have left a comment.

this.tablePartitions = tablePartitions;
}
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code is same as LogFetcher, can we extract this same code in protected class? If some problem occurs, we only need to change once.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code is same as LogFetcher, can we extract this same code in protected class? If some problem occurs, we only need to change once.

@wuchong will refactor the client metadata code implement, so there is no need to uniform. It's sufficient to have test coverage.

Copy link
Contributor

@luoyuxia luoyuxia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems "// todo: try to get value when get is re-triable in FLUSS-56857409" can be finished with this pr?

@swuferhong
Copy link
Contributor Author

Seems "// todo: try to get value when get is re-triable in FLUSS-56857409" can be finished with this pr?

This PR may not be able to fix the issue. Only when the LookupSender introduces a retry mechanism can the lookup produce deterministic results. In the current implementation, the lookup will still throw errors, and retries must be handled at the upper layer (flink).

@swuferhong
Copy link
Contributor Author

Seems "// todo: try to get value when get is re-triable in FLUSS-56857409" can be finished with this pr?

Hi, @platinumhamburg. Your PR #1915 has already addressed this issue. Could you please remove this todo comment in your PR and improve the tests accordingly?

… NotLeaderOrFollowerException in bucket level
@platinumhamburg
Copy link
Contributor

platinumhamburg commented Nov 6, 2025

Seems "// todo: try to get value when get is re-triable in FLUSS-56857409" can be finished with this pr?

Hi, @platinumhamburg. Your PR #1915 has already addressed this issue. Could you please remove this todo comment in your PR and improve the tests accordingly?

I thought about it, and PR #1915 currently does not implement infinite retries nor support delayed backoff retries. In fact, even with limited retries, a single lookup does not guarantee the "deterministic" result expected here, so this TODO item should not be removed in PR #1915.

Copy link
Contributor

@loserwang1024 loserwang1024 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@swuferhong swuferhong merged commit 183c213 into apache:main Nov 10, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

LookupSender doesn't update bucket metadata when receive NotLeaderOrFollowerException in bucket level

4 participants