zilliztech / knowhere

Knowhere is an open-source vector search engine, integrating FAISS, HNSW, etc.
Apache License 2.0
184 stars 78 forks source link

[BUG] IVF `GetVectorByIds` interface has concurrence problem #132

Closed foxspy closed 1 year ago

foxspy commented 1 year ago

IVF index constructs the id->offset map during getvectors stage : https://github.com/zilliztech/knowhere/blob/main/src/index/ivf/ivf.cc#L580. This design will cause write/write concurrence when user calls the interface concurrently because the idmap is shared and not thread-safe.

related milvus issue: #https://github.com/milvus-io/milvus/issues/27390

liliu-z commented 1 year ago

@elstic Fixed

elstic commented 1 year ago

@elstic Fixed

Yes, it was fixed. I'm not getting search failures on the milvus side of the continuous concurrency test