Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
132 stars 2 forks source link

Switch from LiteDB to SQLLite for local storage #2616

Open Frooxius opened 1 month ago

Frooxius commented 1 month ago

Is your feature request related to a problem? Please describe.

We've been using LiteDB for local data storage for a while. However years of my accumulated experience with this library, I've ran into lots of stability issues, data corruption and other problems, where I feel like I need to treat the library with silk gloves, otherwise it might explode.

The stability and reliability of this library isn't as good as I'd like it to be and I'd like us to transition away from it at some point.

Describe the solution you'd like

SQLLite is probably the most popular solution for local storage out there and it's known for its solid reliability and very heavy set of unit tests to ensure that.

This seems like the best candidate to switch to.

https://www.sqlite.org/

Describe alternatives you've considered

We could look into other libraries, but there's also inherent risk of it not being a safe bet as SQLLite is.

Additional Context

I've recently tried to update LiteDB from 5.0.17 to 5.0.21 and it made everything explode - lots of exceptions when reading the data from existing database file.

This is unacceptable kind of behavior for something that stores user data - especially with minor version upgrade.

Requesters

No response

Banane9 commented 1 month ago

SQLite is love <3

Dessix commented 1 month ago

I'd like to recommend libsql for consideration as a potential alternative- it's a SQLite fork which drops some of the prior project goals and accepts community contributions.