Categorygithub.com/RTradeLtd/go-ipfs-blockstore/v2
modulepackage
2.1.4
Repository: https://github.com/rtradeltd/go-ipfs-blockstore.git
Documentation: pkg.go.dev

# 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 of ipfs/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.