fabric: github.com/hyperledger/fabric/core/ledger/ledgerstorage Index | Files

package ledgerstorage

import "github.com/hyperledger/fabric/core/ledger/ledgerstorage"

Index

Package Files

store.go

func LoadPreResetHeight Uses

func LoadPreResetHeight(blockstorePath string) (map[string]uint64, error)

LoadPreResetHeight returns the pre reset height.

func ResetBlockStore Uses

func ResetBlockStore(blockstorePath string) error

ResetBlockStore resets all ledgers to the genesis block.

func Rollback Uses

func Rollback(blockstorePath, ledgerID string, blockNum uint64) error

Rollback reverts changes made to the block store beyond a given block number.

func ValidateRollbackParams Uses

func ValidateRollbackParams(blockstorePath, ledgerID string, blockNum uint64) error

ValidateRollbackParams performs necessary validation on the input given for the rollback operation.

type Provider Uses

type Provider struct {
    // contains filtered or unexported fields
}

Provider encapusaltes two providers 1) block store provider and 2) and pvt data store provider

func NewProvider Uses

func NewProvider(metricsProvider metrics.Provider) *Provider

NewProvider returns the handle to the provider

func (*Provider) Close Uses

func (p *Provider) Close()

Close closes the provider

func (*Provider) Exists Uses

func (p *Provider) Exists(ledgerID string) (bool, error)

Exists checks whether the ledgerID already presents

func (*Provider) Open Uses

func (p *Provider) Open(ledgerid string) (*Store, error)

Open opens the store

type Store Uses

type Store struct {
    blkstorage.BlockStore
    // contains filtered or unexported fields
}

Store encapsulates two stores 1) block store and pvt data store

func (*Store) CommitPvtDataOfOldBlocks Uses

func (s *Store) CommitPvtDataOfOldBlocks(blocksPvtData map[uint64][]*ledger.TxPvtData) error

CommitPvtDataOfOldBlocks commits the pvtData of old blocks

func (*Store) CommitWithPvtData Uses

func (s *Store) CommitWithPvtData(blockAndPvtdata *ledger.BlockAndPvtData) error

CommitWithPvtData commits the block and the corresponding pvt data in an atomic operation

func (*Store) DoesPvtDataInfoExist Uses

func (s *Store) DoesPvtDataInfoExist(blockNum uint64) (bool, error)

DoesPvtDataInfoExist returns true when (1) the ledger has pvtdata associated with the given block number (or) (2) a few or all pvtdata associated with the given block number is missing but the

missing info is recorded in the ledger (or)

(3) the block is committed does not contain any pvtData.

func (*Store) GetLastUpdatedOldBlocksPvtData Uses

func (s *Store) GetLastUpdatedOldBlocksPvtData() (map[uint64][]*ledger.TxPvtData, error)

GetLastUpdatedOldBlocksPvtData invokes the function on underlying pvtdata store

func (*Store) GetMissingPvtDataInfoForMostRecentBlocks Uses

func (s *Store) GetMissingPvtDataInfoForMostRecentBlocks(maxBlock int) (ledger.MissingPvtDataInfo, error)

GetMissingPvtDataInfoForMostRecentBlocks invokes the function on underlying pvtdata store

func (*Store) GetPvtDataAndBlockByNum Uses

func (s *Store) GetPvtDataAndBlockByNum(blockNum uint64, filter ledger.PvtNsCollFilter) (*ledger.BlockAndPvtData, error)

GetPvtDataAndBlockByNum returns the block and the corresponding pvt data. The pvt data is filtered by the list of 'collections' supplied

func (*Store) GetPvtDataByNum Uses

func (s *Store) GetPvtDataByNum(blockNum uint64, filter ledger.PvtNsCollFilter) ([]*ledger.TxPvtData, error)

GetPvtDataByNum returns only the pvt data corresponding to the given block number The pvt data is filtered by the list of 'ns/collections' supplied in the filter A nil filter does not filter any results

func (*Store) Init Uses

func (s *Store) Init(btlPolicy pvtdatapolicy.BTLPolicy)

Init initializes store with essential configurations

func (*Store) IsPvtStoreAheadOfBlockStore Uses

func (s *Store) IsPvtStoreAheadOfBlockStore() bool

IsPvtStoreAheadOfBlockStore returns true when the pvtStore height is greater than the blockstore height. Otherwise, it returns false.

func (*Store) ProcessCollsEligibilityEnabled Uses

func (s *Store) ProcessCollsEligibilityEnabled(committingBlk uint64, nsCollMap map[string][]string) error

ProcessCollsEligibilityEnabled invokes the function on underlying pvtdata store

func (*Store) ResetLastUpdatedOldBlocksList Uses

func (s *Store) ResetLastUpdatedOldBlocksList() error

ResetLastUpdatedOldBlocksList invokes the function on underlying pvtdata store

Package ledgerstorage imports 11 packages (graph) and is imported by 2 packages. Updated 2019-08-29. Refresh now. Tools for package owners.