5 ms·
I recently talked to Howard [1] about lies he was saying about Sanakirja, an LMDB-inspired disk allocator. That's always the same arguments: C is better than Ru
by Kerollmops 3mo ago
I recently talked to Howard [1] about lies he was saying about Sanakirja, an LMDB-inspired disk allocator. That's always the same arguments: C is better than Rust for X, Y or Z reasons. While I reported a segfault just two weeks earlier... [2].
I love LMDB, we use it in Meilisearch (second most stared search engine on GitHub) [3] for about 7 years now. The main issues were related to write speed but we do a compaction of the database and write performances are way better after that. We never had any major DB corruption... I mean... other than when using it on Azure. Azure never works, that's expected, I suppose.
[1]: https://mastodon.social/@hyc/116838499082046918 https://mastodon.social/@hyc/116838499082046918
[2]: https://bugs.openldap.org/show_bug.cgi?id=10522 https://bugs.openldap.org/show_bug.cgi?id=10522
[3]: https://github.com/meilisearch/meilisearch https://github.com/meilisearch/meilisearch
- alfiedotwtf 3mo agoUnfortunately, yeah. > The main issues were related to write speed but we do a compaction of the database and write performances are way better after that I'll ping you if I ever get around to rewriting a faster kv-store in Rust :)
- Kerollmops 3mo agoActually, you should take a look at [1]. It's made in Rust, inspired by LMDB, and supports a cool feature that allows close to anything to be implemented: allocating any page you want to store anything you want. The BTree storage is optional and you can implement whatever storage system you want. When storing a value to disk, you can allocate pages and decide exactly how you plan to store the bytes, allowing you not to store the length of them or to split your data into multiple pages, etc. [1]: https://pijul.org/posts/2021-02-06-rethinking-sanakirja https://pijul.org/posts/2021-02-06-rethinking-sanakirja