chainstore
chainstore copied to clipboard
Lightweight key-value interface to a bunch of storage engines with middleware support, organized as a chain of operations; written in Go
The current boltdb library was archived but https://github.com/coreos/bbolt is being maintained and is considered as a drop in replacement. Can you replace to bbolt?
Fixes for failing tests on travis.
Let's say I have 3 stores: Memstore, BoltDB (async) and s3 (async). given `chain.Put(ctx, key, data)` - Memstore succeeds - BoltDB fails - s3 succeeds What should we do? Should...
All of the stores clients should use ctxhttp or something.
batched writes are way faster for some data stores, ie. for boltdb: https://gist.github.com/benbjohnson/59b57e3772bfb7a65fbf
see: http://dave.cheney.net/2014/10/17/functional-options-for-friendly-apis
Should be able to support both.. current interface is: `New(capacity int64, *anotherStore chainstore.Store)` .. maybe we should make it `New("500MB", store)` or `New("500 items", store)` .. using a simple string?...