-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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] Fix NAC getting stuck #2991
Conversation
Please tag your PR title with one of: [ENH | BUG | DOC | TST | BLD | PERF | TYP | CLN | CHORE]. See https://docs.trychroma.com/contributing#contributing-code-and-ideas |
Reviewer ChecklistPlease leverage this checklist to ensure your code review is thorough before approving Testing, Bugs, Errors, Logs, Documentation
System Compatibility
Quality
|
This stack of pull requests is managed by Graphite. Learn more about stacking. Join @sanketkedia and the rest of your teammates on Graphite |
@@ -444,5 +450,7 @@ mod tests { | |||
test_multipart_get_for_size(1024 * 1024 * 7).await; | |||
// At > 8 MB. | |||
test_multipart_get_for_size(1024 * 1024 * 19).await; | |||
// Greater than NAC limit i.e. > 5*8 MB = 40 MB. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like 100MB
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think he's saying the NAC limit is 5*8, so this will be greater than that and trigger the bug we found? But I am not sure where 5 comes from
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Description of changes *Summarize the changes made by this PR.* - NAC would just get stuck if all tokens are exhausted by a single request in a low concurrency setting. There is a bug in the code that defers the release of all tokens for a request to the very end, this PR fixes that. Verified through a local repro. ## Test plan - [x] Tests pass locally with `pytest` for python, `yarn test` for js, `cargo test` for rust ## Documentation Changes None
Description of changes
Summarize the changes made by this PR.
Test plan
pytest
for python,yarn test
for js,cargo test
for rustDocumentation Changes
None