Piotr Tabor

Results 64 comments of Piotr Tabor

MAP_POPULATE causes best-effort load of the bbolt data to RAM. If you have order of 60GB of RAM and want to serve reads quickly - it might be worth it....

You are leader in terms of bbolt scale (I heard so far). Please keep us posted on the results of your experiments.

> Makes me wonder what would happen if I were to delete a big bucket (then we are back to our original issue from this thread..). The main reason for...

You can have mulitiple read only transactions in bbolt parallel to the RW transaction. The RO transaction should see the state of the system as it was at the time...

- NoFreelistSync=false as Benjamin wrote should be here a game changer - Please make sure you open the store as ReadOnly - Please experiment with bigger pages in such case,...

Interesting. Collecting stacktrace using `pprof` or at least anectodal evidence stacktrace using `SIGQUIT` would give more light on what's taking the time. I think `checkBuckets` is not being called for...

> A library should not panic at all. I don't agree with this statement in this specific context: - In general libraries should not panic to communicate a recoverable error,...

"page %d already freed" is also indicator of either bug in freelist implementation or memory stomping or ram/cpu corruption. It shouldn't happen regardless of bbolt lib user actions.

How about more lightweight solutions, like https://github.com/google/btree. Is it important for your use-case to keep the data embedded as a serialized buffer ?

Could you please patch this PR into your local client of bbolt: https://github.com/etcd-io/bbolt/pull/225 And run ./cmd/main check on the /member/snap/db file. I created the expanded check because I was debugging...