4 ms·
> I never took SQLite seriously for the very reason that field types were not enforced by default. I can understand not taking it seriously if it was completel
by Rohansi 3mo ago
> I never took SQLite seriously for the very reason that field types were not enforced by default.
I can understand not taking it seriously if it was completely unsupported but I'm pretty sure most databases don't have perfect default configs. Even PostgreSQL needs configuration for optimal performance because the defaults are for low (minimum) spec systems.
> then eventually adding nearly all the reliability facilities of TCP to the app (automatic retry, etc) by hand.
Depending on what you're doing you're still probably doing better than TCP after all that work. TCP is a stream based protocol which is not ideal for many applications due to head of line blocking. If you built your own reliability layer over UDP you likely avoid that issue entirely.
- lacunary 3mo agotuning defaults for performance feels much more acceptable than tuning defaults for correctness
- Rohansi 3mo agoIt's for backwards compatibility, as always. You also need to enable foreign keys or they aren't enforced. You also need to tune for performance (enable WAL, adjust cache size, etc.). The SQLite documentation is very up front about these things [1] and more. It should only be an issue if you're the type of person who never reads any documentation. [1] https://sqlite.org/quirks.html https://sqlite.org/quirks.html
- pavon 3mo agoIt wasn't option for the first 20 years of SQLite's existence.