[GH-ISSUE #727] object_already_exists;mark_complete(): CHECK_EQ(status_, PROCESSING) #229

Closed
opened 2026-10-29 21:11:14 +00:00 by bsakaguchi · 7 comments
Owner

Originally created by @zx-ai on GitHub (Aug 8, 2025).
Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/727

Before calling batchPut, I first call the batchIsExist() interface to find out which keys do not exist (returning -704). Only for those non-existent keys will I call batchPut to store them into mooncake_master. However, I still encounter the following error:
I20250808 16:04:00.720455 47968852977408 master_service.cpp:350] key=0000000000012437241962574060620, info=object_already_exists
I20250808 16:04:00.720670 47968859281152 master_service.cpp:350] key=0000000000012437241962574060620,info=object_already_exists
F20250808 16:04:00.721639 47968859281152 types.h:307] Check failed: status_ == ReplicaStatus::PR0CESSING (COMPLETE Vs. PROCESSING)
Why do I still get a "object_already_exists" error when I only put keys that don't exist (indicated by -704)?
Should I remove this CHECK_EQ restriction? Would storing duplicate keys cause the mooncake store to crash?

Originally created by @zx-ai on GitHub (Aug 8, 2025). Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/727 Before calling batchPut, I first call the batchIsExist() interface to find out which keys do not exist (returning -704). Only for those non-existent keys will I call batchPut to store them into mooncake_master. However, I still encounter the following error: I20250808 16:04:00.720455 47968852977408 master_service.cpp:350] key=0000000000012437241962574060620, info=object_already_exists I20250808 16:04:00.720670 47968859281152 master_service.cpp:350] key=0000000000012437241962574060620,info=object_already_exists F20250808 16:04:00.721639 47968859281152 types.h:307] Check failed: status_ == ReplicaStatus::PR0CESSING (COMPLETE Vs. PROCESSING) Why do I still get a "object_already_exists" error when I only put keys that don't exist (indicated by -704)? Should I remove this CHECK_EQ restriction? Would storing duplicate keys cause the mooncake store to crash?
bsakaguchi 2026-10-29 21:11:14 +00:00
Author
Owner

@ykwd commented on GitHub (Aug 11, 2025):

Thanks for the report!
If things happened exactly as you described, then this might indeed be a bug. However, we haven’t encountered such a case so far. Could you share the steps or a minimal example to help us reproduce the issue?

<!-- gh-comment-id:3173111647 --> @ykwd commented on GitHub (Aug 11, 2025): Thanks for the report! If things happened exactly as you described, then this might indeed be a bug. However, we haven’t encountered such a case so far. Could you share the steps or a minimal example to help us reproduce the issue?
Author
Owner

@xiaguan commented on GitHub (Aug 11, 2025):

Did you use the latest release? I think we removed it a while ago.

<!-- gh-comment-id:3173112183 --> @xiaguan commented on GitHub (Aug 11, 2025): Did you use the latest release? I think we removed it a while ago.
Author
Owner

@zx-ai commented on GitHub (Aug 11, 2025):

@xiaguan I have used the latest release, when object_already_exists ,the mooncake_master do not crash.

<!-- gh-comment-id:3173922869 --> @zx-ai commented on GitHub (Aug 11, 2025): @xiaguan I have used the latest release, when object_already_exists ,the mooncake_master do not crash.
Author
Owner

@zx-ai commented on GitHub (Aug 11, 2025):

@ykwd This issue occurs intermittently. I cannot provide a minimal reproducible example. However, it can be observed that the issue is more likely to occur when numerous processes are simultaneously performing put, get, and batchIsExist operations. I suspect this might be due to network congestion during RPC communication, causing another process to push the same key between the time when the key's status is checked and when the current process attempts to push it.

<!-- gh-comment-id:3173944493 --> @zx-ai commented on GitHub (Aug 11, 2025): @ykwd This issue occurs intermittently. I cannot provide a minimal reproducible example. However, it can be observed that the issue is more likely to occur when numerous processes are simultaneously performing put, get, and batchIsExist operations. I suspect this might be due to network congestion during RPC communication, causing another process to push the same key between the time when the key's status is checked and when the current process attempts to push it.
Author
Owner

@ykwd commented on GitHub (Aug 11, 2025):

@zx-ai I see. If multiple requests attempt to put the same key, any request after the first one may receive an object_already_exists error. This is an expected behavior and should not cause any issues for upper-level applications.

<!-- gh-comment-id:3174611783 --> @ykwd commented on GitHub (Aug 11, 2025): @zx-ai I see. If multiple requests attempt to put the same key, any request after the first one may receive an `object_already_exists` error. This is an expected behavior and should not cause any issues for upper-level applications.
Author
Owner

@github-actions[bot] commented on GitHub (Jun 27, 2026):

This issue has had no activity for 90 days and will be closed in 7 days if there is no further activity. Please comment or react if it should stay open.

<!-- gh-comment-id:4815210140 --> @github-actions[bot] commented on GitHub (Jun 27, 2026): This issue has had no activity for 90 days and will be closed in 7 days if there is no further activity. Please comment or react if it should stay open.
Author
Owner

@github-actions[bot] commented on GitHub (Jul 6, 2026):

Closing due to 3 months of inactivity. If this is still relevant, please comment and we can reopen.

<!-- gh-comment-id:4889093696 --> @github-actions[bot] commented on GitHub (Jul 6, 2026): Closing due to 3 months of inactivity. If this is still relevant, please comment and we can reopen.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kvcache-ai/Mooncake#229
No description provided.