-
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
[PERF]: pipeline segment committing/flushing #3163
base: perf-parallelize-applying-log
Are you sure you want to change the base?
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
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
7be9113
to
cffe2a3
Compare
9c5a117
to
5be9243
Compare
e696cd7
to
851511a
Compare
da5e9e4
to
ae2797b
Compare
92a0f28
to
f8ab4ac
Compare
ae2797b
to
34410cd
Compare
Description of changes
This introduces two new operators that allow committing and flushing individual segments. This enables pipelining across all segment types.
Some changes in service of this:
write_to_blockfiles()
is renamed to a genericfinish()
method on theSegmentWriter
trait..flush()
consumesself
but operators receive&input
. I don't love this, I think the alternative is allowing operators to consume the input.An example trace (with two partitions):
Screen.Recording.2024-11-20.at.5.09.37.PM.mov
Test plan
How are these changes tested?
pytest
for python,yarn test
for js,cargo test
for rustDocumentation Changes
Are all docstrings for user-facing APIs updated if required? Do we need to make documentation changes in the docs repository?
n/a