Skip to content

Conversation

@iosmanthus
Copy link
Collaborator

callee_id is used to indicate the expected server ID to receive the request. The server SHOULD check if the callee_id matches its own ID, normally it's the client url address of the server. We encountered an issue where a tso client caches the stale DNS result and the new tso server takes over the old server's network address. Then, the tso client connects to the new tso server (a follower) with the actual leader's hostname, creating a hallucination that the leader is not the leader anymore. If the client meets this case, it might never get out of it if it doesn't refresh its DNS cache by reconnecting. ref tikv/pd#9894

`callee_id` is used to indicate the expected server ID to receive the request. The server **SHOULD** check if the `callee_id` matches its own ID, normally it's the client url address of the server. We encountered an issue where a tso client caches the stale DNS result and the new tso server takes over the old server's network address. Then, the tso client connects to the new tso server (a follower) with the actual leader's hostname, creating a hallucination that the leader is not the leader anymore. If the client meets this case, it might never get out of it if it doesn't refresh its DNS cache by reconnecting. ref tikv/pd#9894

Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
@pingcap-cla-assistant
Copy link

pingcap-cla-assistant bot commented Nov 21, 2025

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 4 committers have signed the CLA.

✅ iosmanthus
❌ rleungx
❌ overvenus
❌ JmPotato
You have signed the CLA already but the status is still pending? Let us recheck it.

overvenus and others added 5 commits November 21, 2025 22:59
* Remove unnecessary file

Signed-off-by: Neil Shen <overvenus@gmail.com>

* Unify proto options

* Do not generate XXX_ fields for Go protobuf structs
* Enable lite runtime for Rust protobuf files

Signed-off-by: Neil Shen <overvenus@gmail.com>

* update go files

Signed-off-by: Neil Shen <overvenus@gmail.com>

* update proto lock file

Signed-off-by: Neil Shen <overvenus@gmail.com>

---------

Signed-off-by: Neil Shen <overvenus@gmail.com>
Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
* Introduce QueryRegion stream

Signed-off-by: JmPotato <ghzpotato@gmail.com>

* Add prev_keys to QueryRegionRequest

Signed-off-by: JmPotato <ghzpotato@gmail.com>

---------

Signed-off-by: JmPotato <ghzpotato@gmail.com>
Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
Signed-off-by: Ryan Leung <rleungx@gmail.com>
Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
…llee-header

Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
@iosmanthus iosmanthus force-pushed the iosmanthus/pd/8.5/callee-header branch from e10109f to d07b34e Compare November 21, 2025 15:02
…nto iosmanthus/pd/8.5/callee-header

Signed-off-by: iosmanthus <myosmanthustree@gmail.com>
@iosmanthus iosmanthus merged commit 5438961 into release-8.5-keyspace Jan 14, 2026
@ti-chi-bot ti-chi-bot bot added size/L and removed size/XXL labels Jan 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants