Hacker Newsnew | past | comments | ask | show | jobs | submit | mtndew4brkfst's commentslogin

I knew before I opened the article that this was going to be about or at least include the Jumping <Food> entries. Happy to be right, and for them to be gone.


Andy is very critical of using mmap in database implementations.


Andy's critiques are only valid on dedicated database servers.

https://www.symas.com/post/are-you-sure-you-want-to-use-mmap...

LMDB uses mmap and Andy recommends LMDB, in the very article this thread is about.


Why? Sqlite and LMDB make fantastic use of it. For anyone doing a single writer db it's a no brainer. It does so much for you and it does it very well. All the things you don't have to implement because it does it for you:

- Reading the data from disk

- Concurrency between different threads reading the same data

- Caching and buffer management

- Eviction of pages from memory

- Playing nice with other processes in the machine

Why would you not leverage it? It's such a great fit for scaling reads.


The strongest argument as far as I can see it is... the problem is you now lose control over all those things. It's a black box with effectively no knobs.

Anyways, read for yourself, Pavlo & Leis get into it in detail, and there's benchmarks:

https://db.cs.cmu.edu/papers/2022/cidr2022-p13-crotty.pdf

https://db.cs.cmu.edu/mmap-cidr2022/


What am I missing? The transactional safety problem (the bulk of the paper) is solved simply with a single writer. Which is where you want to be anyway for efficient batching throughput (and isolation).

The other concerns seem to imply there are no other programs running on the same machine as the database. The minute that's not true (is it ever true?). Then OS will do a better job (as seen with LMDB etc).

I think it's telling that the paper focuses on mongoDB not LMDB.


Fun footnote: SQLite only got on board with mmap after I demonstrated how slow their code was without it. I.e., getting a 22x speedup by replacing SQLite's btree code with LMDB https://github.com/LMDB/sqlightning


Thank you for beating the mmap drum and LMDB! It's truly an incredible piece of tech.


“ It's such a great fit for scaling reads.”

And losing them.


How so? LMDB, boltdb/bbolt and sqlite (with mmap) are all rock solid. Just because mongodb used mmap badly does not make it any less valuable.


GitHub has never allowed public repos to disable PRs in particular. There's no setting for that.


It's not directly possible, no, but with branch protection rules and this Github action it is trivial to set up: https://github.com/dessant/repo-lockdown


One foundational misunderstanding in your very first bullet - Universal Blue distros are installable operating systems that happen to use container image formats as a file representation for network distribution and update mechanisms, but you're expected to be running it on actual hardware or as a traditional VM. The outermost "container" part is largely an incidental implementation detail. You don't run these as a workload on like, a Kube cluster, or anything like that.

The underlying project in question for the next conceptual layer down is rpm-ostree:

https://coreos.github.io/rpm-ostree/


Thank you for correcting my mistake; that helps.



Perfect.


It's literally impossible for open source development to be an asocial or apolitical endeavor.


That doesn't mean conferences need to be loaded with talks about the community and politics.


Why does her hair color matter to you? Why is open source longevity and viability not on-topic for LWN discussion?

Dr Foster holds a PhD, did her dissertation about the Linux kernel, and has had a respectably long career in technology with a focus on open source and governance. The topic is literally straight in her professional wheelhouse.


[flagged]


"LWN.net is a reader-supported news site dedicated to producing the best coverage from within the Linux and free software development communities."

FOSS beyond Linux itself is still explicitly on-topic by the site's own self-description.

But we all know what this was about anyway. Good luck to you out there.


Yes, it's on topic, but there is still or at least should be a focus on Linux. I am expressing feedback that I don't want to see this kind of article.


Very very much so. The project also includes separate binary releases with this feature compiled out altogether, but I'd much rather this sort of feature was never ideated or acted upon in this first place.

Generally speaking I don't want a terminal multiplexer to be doing network IO of any sort, so I also didn't love it when they shipped "load WASM plugins from a non-checksummed arbitrary URL via your config file" in a previous release.


As with my comment in another tree, no, none of the Elixir core team or Dashbit employees are directly involved with this effort, though they may be advising informally and will likely submit a PR here and there.

https://dashbit.co/#team https://elixir-lang.org/development.html#team https://github.com/elixir-lang/expert/graphs/contributors


I'm a bit surprised by that. Isn't an LSP for a language like Elixir a close integration with the runtime, compiler, etc?


In an ideal world, yes, my belief is that that produces the best results.


Nit: there has never been an official LSP implementation until now, only community-authored. Even now no Dashbit employees or language core members are directly involved in this project in an ongoing basis.

IMO that contributes powerfully to the quality of the experiences of using any of the options.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: