package
0.0.0-20200723042522-932836ee9d04
Repository: https://github.com/mixpanel/bb-storage.git
Documentation: pkg.go.dev

# Functions

NewBulkAllocatingStateStore is an adapter for StateStore that reduces the number of Allocate() calls on the underlying implementation by allocating data as larger chunks.
NewCachingOffsetStore is an adapter for OffsetStore that caches digests returned by/provided to previous calls of Get() and Put().
NewCircularBlobAccess creates a new circular storage backend.
NewDemultiplexingOffsetStore creates an OffsetStore that demultiplexes operations based on the instance name stored in the provided digest.
NewFileDataStore creates a new file-based store for blob contents.
NewFileOffsetStore creates a file-based accessor for the offset store.
NewFileStateStore creates a new storage for global metadata of a circular storage backend.
NewPositiveSizedBlobStateStore is an adapter for StateStore that forces allocations of blobs to be positive in size.

# Structs

Cursors is a pair of offsets within the data file, indicating which part of the file contains valid readable data and where future writes need to take place.

# Interfaces

DataStore is where the data corresponding with a blob is stored.
OffsetStore maps a digest to an offset within the data file.
ReadWriterAt is an interface for the file operations performed by the circular storage layer.
StateStore is where global metadata of the circular storage backend is stored, namely the read/write cursors where data is currently being stored in the data file.

# Type aliases

OffsetStoreGetter is the callback type used by the demultiplexing offset store and is invoked for every operation.