-
-
Notifications
You must be signed in to change notification settings - Fork 313
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
build 'discovery' ODB with auto-consistency for on-disk files #266
Comments
Byron
added a commit
that referenced
this issue
Nov 30, 2021
The plan is to separate pack location entirely from Object and put the location specific functions into a separate trait.
Byron
added a commit
that referenced
this issue
Nov 30, 2021
Byron
added a commit
that referenced
this issue
Nov 30, 2021
… alter git_odb::Find trait (#266) This will break a lot, but has to happen to prepare these traits for the next generation of object databases.
Byron
added a commit
that referenced
this issue
Dec 1, 2021
The plan is to separate pack location entirely from Object and put the location specific functions into a separate trait.
Byron
added a commit
that referenced
this issue
Dec 1, 2021
Byron
added a commit
that referenced
this issue
Dec 1, 2021
… alter git_odb::Find trait (#266) This will break a lot, but has to happen to prepare these traits for the next generation of object databases.
Byron
added a commit
that referenced
this issue
Dec 1, 2021
Byron
added a commit
that referenced
this issue
Dec 1, 2021
Byron
added a commit
that referenced
this issue
Dec 1, 2021
With the new architecture this can be an implementation detail without forcing it to be Sync.
Byron
added a commit
that referenced
this issue
Dec 2, 2021
The plan is to separate pack location entirely from Object and put the location specific functions into a separate trait.
Byron
added a commit
that referenced
this issue
Dec 2, 2021
Byron
added a commit
that referenced
this issue
Dec 2, 2021
… alter git_odb::Find trait (#266) This will break a lot, but has to happen to prepare these traits for the next generation of object databases.
Byron
added a commit
that referenced
this issue
Dec 2, 2021
Byron
added a commit
that referenced
this issue
Dec 2, 2021
Byron
added a commit
that referenced
this issue
Dec 2, 2021
With the new architecture this can be an implementation detail without forcing it to be Sync.
Byron
added a commit
that referenced
this issue
Dec 2, 2021
Byron
added a commit
that referenced
this issue
Dec 2, 2021
Byron
added a commit
that referenced
this issue
Dec 2, 2021
For completeness in case of single-threaded operations
Byron
added a commit
that referenced
this issue
Dec 2, 2021
Byron
added a commit
that referenced
this issue
Dec 2, 2021
It could easily be general over all kinds of store as long as there is support for pack-caches, which might be helpful later for the 'final' store type. Ideally, this one now shows how to do it.
Byron
added a commit
that referenced
this issue
Dec 3, 2021
The plan is to separate pack location entirely from Object and put the location specific functions into a separate trait.
Byron
added a commit
that referenced
this issue
Dec 18, 2021
It's a bit tricky to use the right kind of handle and transform the Rc<Store> back into an Arc<Store>, but it works.
Byron
added a commit
that referenced
this issue
Dec 18, 2021
Byron
added a commit
that referenced
this issue
Dec 18, 2021
Byron
added a commit
that referenced
this issue
Dec 18, 2021
Byron
added a commit
that referenced
this issue
Dec 18, 2021
Byron
added a commit
that referenced
this issue
Dec 18, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
The latter needs the notion of the index not existing, and shouldn't fetch it by default or else each sanbox run fetches the entire index.
Byron
added a commit
that referenced
this issue
Dec 19, 2021
It now assumes that the crates-index must exist, which migth not always be the case and rightfully so. Now we wrap it to get back to the original behavior.
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
This works by bypassing the central index, which doesn't know about the garbaged indices anymore, to obtain the indices directly.
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Byron
added a commit
that referenced
this issue
Dec 19, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The DB spiked in the discovery has all strengths and seemingly no weaknesses (except for complexity). Let's build it to be able to automatically adapt to changes on disk and to handle server loads efficiently.
The radicle-link ODB shows how a fully sync ODB can look like, and maybe the initial design can be simplified now that it's clear that fully Sync is very fast, too.
Or said differently, it appears that thread-local caches can be used but they probably only make sense for object buffers and pack-caches, less for accelerating object access.
Ideally, a quick-version can be drafted to have benchmark results quickly to even see if the path is right.
What I wish for is more dynamic handling of open file handles, ideally there is a trigger to release unused ones, and generally have a way of handling file limits somewhat gracefully (at least on server/caller level).
Tasks
Find
traits #267The text was updated successfully, but these errors were encountered: