const ( // ChainsDir is the name of the directory containing the channel ledgers. ChainsDir = "chains" // IndexDir is the name of the directory containing all block indexes across ledgers. IndexDir = "index" )
ErrUnexpectedEndOfBlockfile error used to indicate an unexpected end of a file segment this can happen mainly if a crash occurs during appening a block and partial block contents get written towards the end of the file
var ErrUnexpectedEndOfBlockfile = errors.New("unexpected end of blockfile")
func ClearPreResetHeight(blockStorageDir string) error
func LoadPreResetHeight(blockStorageDir string) (map[string]uint64, error)
func NewProvider(conf *Conf, indexConfig *blkstorage.IndexConfig, metricsProvider metrics.Provider) blkstorage.BlockStoreProvider
NewProvider constructs a filesystem based block store provider
func ResetBlockStore(blockStorageDir string) error
func Rollback(blockStorageDir, ledgerID string, targetBlockNum uint64, indexConfig *blkstorage.IndexConfig) error
Rollback reverts changes made to the block store beyond a given block number.
func ValidateRollbackParams(blockStorageDir, ledgerID string, targetBlockNum uint64) error
ValidateRollbackParams performs necessary validation on the input given for the rollback operation.
Conf encapsulates all the configurations for `FsBlockStore`
type Conf struct {
// contains filtered or unexported fields
}
func NewConf(blockStorageDir string, maxBlockfileSize int) *Conf
NewConf constructs new `Conf`. blockStorageDir is the top level folder under which `FsBlockStore` manages its data
FsBlockstoreProvider provides handle to block storage - this is not thread-safe
type FsBlockstoreProvider struct {
// contains filtered or unexported fields
}
func (p *FsBlockstoreProvider) Close()
Close closes the FsBlockstoreProvider
func (p *FsBlockstoreProvider) CreateBlockStore(ledgerid string) (blkstorage.BlockStore, error)
CreateBlockStore simply calls OpenBlockStore
func (p *FsBlockstoreProvider) Exists(ledgerid string) (bool, error)
Exists tells whether the BlockStore with given id exists
func (p *FsBlockstoreProvider) List() ([]string, error)
List lists the ids of the existing ledgers
func (p *FsBlockstoreProvider) OpenBlockStore(ledgerid string) (blkstorage.BlockStore, error)
OpenBlockStore opens a block store for given ledgerid. If a blockstore is not existing, this method creates one This method should be invoked only once for a particular ledgerid