milvus-io / milvus

A cloud-native vector database, storage for next generation AI applications
https://milvus.io
Apache License 2.0
31.1k stars 2.96k forks source link

[Bug]: AssignSegmentID still return success when it failed #32322

Open zhagnlu opened 7 months ago

zhagnlu commented 7 months ago

Is there an existing issue for this?

Environment

- Milvus version: master
- Deployment mode(standalone or cluster):
- MQ type(rocksmq, pulsar or kafka):    
- SDK version(e.g. pymilvus v2.0.0rc2):
- OS(Ubuntu or CentOS): 
- CPU/Memory: 
- GPU: 
- Others:

Current Behavior

when datacoord alloc segmentid failed, this interface return success instead of fail. image

Expected Behavior

No response

Steps To Reproduce

No response

Milvus Log

No response

Anything else?

No response

XuanYang-cn commented 7 months ago

image ut breaks

XuanYang-cn commented 7 months ago

@zhagnlu list of SegmentIDRequest represents different collection's segmentIDRequests, One Collection's failure shouldn't influence other collections.

As how proxy processing it, image

we should append a SegmentAllocations with Non-success status image

congqixia commented 7 months ago

It looks like the patch broke the design for proxy may assign segment id for multiple collections /cc @czs007

XuanYang-cn commented 7 months ago

/assign @zhagnlu /assign @czs007

XuanYang-cn commented 7 months ago

also we don't return err for RPC returns, but error status

zhagnlu commented 7 months ago

update it as return error status for every request, not return err all