5 ms·
BKNR-datastore seems really nice but I haven't gotten a chance to play with it yet. Do you know if it supports concurrent writes yet? I know it didn't circa 200
by redline6561 16y ago
BKNR-datastore seems really nice but I haven't gotten a chance to play with it yet. Do you know if it supports concurrent writes yet? I know it didn't circa 2008 or so...
- sedachv 16y agoYeah, there's a global lock for transactions. I'm not sure it's such a big loss considering you still need a lock on the log file. Adding MVCC or per-object locks would mean rewriting most of BKNR, changing major parts of how it works, and a hugely more complicated implementation. And those things have a lot of their own overhead too. OTOH then you can just throw the objects into an mmapped file, put a REPL on a socket and bingo you have a multi-user networked ACID object database. But then you might as well just use Postgresql and Postmodern. I don't know if you've ever installed the full Kloudshare, but Will wrote the first Hold backed by bknr.datastore, so you've probably used it.
- redline6561 16y ago> "But then you might as well just use Postrgresql and Postmodern." Yeah, that's what I figured. I doubt for anything I'll work on soon that the lock will be an issue. Just curious. :) I didn't realize the hold used to be backed by bknr. That's cool. Thanks for the heads up.