mirror of
https://github.com/kvcache-ai/Mooncake.git
synced 2026-11-05 01:17:55 +00:00
[GH-ISSUE #2177] [Bug]: transfer_metadata: Failed to get segment descriptor for segment xxx #598
Labels
No labels
ascend
auto-closed
bug
bug
CI/Build
Common
documentation
enhancement
feature request
good first issue
help wanted
high priority
MetaX
nightly-failure
pull-request
PyTorch Backend
question
RFC
Roadmap
stale
Store
Tests
Transfer Engine
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kvcache-ai/Mooncake#598
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @thincal on GitHub (May 22, 2026).
Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/2177
Originally assigned to: @alogfans on GitHub.
Bug Report
Describe the bug
SGLang v0.5.10 with mooncake transferengine v0.3.9 works well, but when I upgrade mooncake transfer-engine to latest version v0.3.11, it will report error as bellow:
Reproduction
Before submitting...
@alogfans commented on GitHub (May 22, 2026):
The first line message is expected, as
allocateLocalSegmentIDwill first check whethergetSegmentDescexisted. If not existed (normally the first call), it prints this message and allocates new SegmentDesc object. So it's safe to ignore.The sedond message reflects that, potentially:
Does this break the service? If you can provide more logs we can further investigate it.
@thincal commented on GitHub (May 22, 2026):
@alogfans Thanks for investigating this issue, more logs provided into the original post.
It seems that the error "Failed to get segment descriptor for segment" is happened during transfering kvcache by prefill install employing mooncake transfer engine, then it will cause the prefill transfer failed.
@thincal commented on GitHub (May 22, 2026):
I would double check it, response later.
@thincal commented on GitHub (May 22, 2026):
It is confirmed that both prefill and decode are with same version v0.3.11 of Mooncake TE.
@thincal commented on GitHub (May 22, 2026):
I just have found that "Failed to get segment descriptor for segment" is caused by the error from decode side:
@alogfans What's the possible reason with the register memory failure (Cannot allocate memory) ? I can provide more information if needed, thanks for help.
@thincal commented on GitHub (May 22, 2026):
I have used 8 rdma devices to register with Mooncake TE, which might (guess) cause the memory register (cannot allocate memory) issue based on previous post. After I configure Mooncake TE with one single rdma device it works well again.
But it seems that this setting doesn't cause any issue in Mooncake TE version v0.3.9, could you help illustrate the behavior changes with this after version v0.3.9?
Many thanks @alogfans
@thincal commented on GitHub (May 22, 2026):
Update: Sorry that I miss-understanding the behavior of "led to register 80G one time for each device", which it seems about the Moonecake Store? But after I update the Mooncake TE device register with one single device for each gpu id, it works well now.
Looking for any further information with this, thanks for help.
@thincal commented on GitHub (May 22, 2026):
It seems that I have found the root cause: https://github.com/kvcache-ai/Mooncake/pull/2066, which introduce the
WITH_NVIDIA_PEERMEMwith default valuefalseto enable dmabuf by default.But dmabuf with multiple devices reigster consumes massive lock memory etc. resources, I have verified with
WITH_NVIDIA_PEERMEM: 1, it works well again with multi devices assigned.Also it seems that this is fixed by https://github.com/kvcache-ai/Mooncake/pull/2192 from @ShangmingCai to turn dmabuf off by default.
cc @alogfans
@alogfans commented on GitHub (May 23, 2026):
@thincal After applying #2192, will the error still happen?
@thincal commented on GitHub (May 23, 2026):
I just add
WITH_NVIDIA_PEERMEM: "1", it works well now.@alogfans commented on GitHub (May 28, 2026):
@thincal Thanks for reporting!