Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[bug] upsert_points_blocking() api blocks indefinitely without any clear debug message #67

Open
hackintoshrao opened this issue Aug 16, 2023 · 3 comments

Comments

@hackintoshrao
Copy link

hackintoshrao commented Aug 16, 2023

Hey folks,

I'm creating a custom payload and committing data to Qdrant. The upsert operation works perfectly for about a thousand points, then gets blocked indefinitely. There was no debug information available to identify what could have gone wrong.

  client
             .upsert_points_blocking(COLLECTION_NAME, new, None)
             .await
             .map_err(|_| Box::new(CommitError::QdrantError))?;
@hackintoshrao
Copy link
Author

Hey folks, I'm observing something weird. I'm writing data to Qdrant in a loop. The database writes get blocked precisely at the 70th upsert operation!

Initially, I assumed the issue could be with a particular payload. Still, it turns out that irrespective of the point payload, the writes get blocked at a predictable iteration of the write!

@generall
Copy link
Member

Hi @hackintoshrao, could you please provide a full function code, so we could try to reproduce? So far we didn't observe any hanging problems with rust client, even though it is heavily used in our benchmark tool: https://github.com/qdrant/bfb

@hackintoshrao
Copy link
Author

@generall : The issue happens only when I block the async upsert operation function using use futures::executor::block_on. This is leading to a deadlock down the line while upserting data.

I was blocking on the upserts since I was upserting inside a closure, moved the upsert out of the closure and removed the block_on. Works perfectly now.

If you think it would still be interesting to see the issue first hand, ill keep the issue open and create a stripped-out version of the code to reproduce this over the weekend.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants