# README
go-ipfs-blockstore
go-ipfs-blockstore
is a fork of ipfs/go-ipfs-blockstore
tailored to the needs of TemporalX. List of changes:
- Alias interfaces to upstream
- Remove of
GCBlockstore
implementation, but left the alias for compatability - Implement logging with
zap
instead ofipfs/go-log
- Use prometheus for metrics directly instead of
go-ipfs-metrics
- Adds an interface type for our reference counted blockstore
License
All previous code from upstream is licensed under MIT, while our new additions is licensed under AGPL-3.0; All AGPL-3.0 license code has a copyright header at the top of the file. For our actual license see LICENSE
for upstream license see LICENSE.orig
# Functions
CachedBlockstore returns a blockstore wrapped in an ARCCache and then in a bloom filter cache, if the options indicate it.
DefaultCacheOpts returns a CacheOpts initialized with default values.
NewBlockstore returns a default Blockstore implementation using the provided datastore.Batching backend.
No description provided by the author
NewRemoteBlockstore returns a new remote blockstore.
# Variables
BlockPrefix namespaces blockstore datastores.
ErrHashMismatch is an error returned when the hash of a block is different than expected.
ErrNotFound is an error returned when a block is not found.
# Structs
CacheOpts wraps options for CachedBlockStore().
RemoteBlockstore storing blocks in remote locations without running the blockstore locally.
# Interfaces
CountedBlockstore is a reference counted blockstore.
MetricStore is a blockstore type that exposes functions to retrieve statistics about the blockstore.
# Type aliases
Blockstore aliases upstream blockstore interface.
GCBlockstore aliases upstream gcblockstore interface.
GCLocker aliases upstream gclocker interface.
Unlocker aliases upstream unlocker interface.