-
Notifications
You must be signed in to change notification settings - Fork 428
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
Too many files in .gd/indices -- use a database #106
Comments
Yeah but the thing is how do we keep track of conflicts without taking note of the metadata? There was an issue in which the user was not happy because they lost data, even though drive stated it did a naive push and pull -- issue #57. Also the multiple files are there to increase the ability for parallel operations on file. Great suggestion on using a DB! |
Also consider LMDB/Bolt |
Hello @nkabir thank you for that awesome suggestion, and welcome to drive. I just read the Wikipedia reference you posted as well as just peeked at the project page. This looks a great match for this project. I'll take a better look at it when I get up. Thank you again. |
You're welcome! Your work is excellent and very much appreciated! |
Fantastic. I'll give it a try! |
Looks like drive creates a separate index file with some info for every file it pulls/pushes. All of them are being created in single directory .gd/indices.
If drive manages many small files, it quickly becomes not efficient & wasteful. A lot of tools won't work very well with lots of files in single directory. Also, this could be quite wasteful with metadata taking almost as much space as data itself.
I think ideally I'd like to see .gd/indices/ replaced with single (or a few) files. We could for example use sqlite or bdb or one of other embedded databases.
The text was updated successfully, but these errors were encountered: