fabric: github.com/hyperledger/fabric/core/ledger/kvledger/txmgmt/statedb/statecouchdb Index | Files | Directories

package statecouchdb

import "github.com/hyperledger/fabric/core/ledger/kvledger/txmgmt/statedb/statecouchdb"

Index

Package Files

batch_util.go commit_handling.go couchdoc_conv.go metadata_retrieval.go statecouchdb.go statecouchdb_test_export.go version_cache.go version_field_encoding.go

func CleanupDB Uses

func CleanupDB(t testing.TB, dbProvider statedb.VersionedDBProvider)

type TestVDBEnv Uses

type TestVDBEnv struct {
    DBProvider statedb.VersionedDBProvider
    // contains filtered or unexported fields
}

TestVDBEnv provides a couch db backed versioned db for testing

func NewTestVDBEnv Uses

func NewTestVDBEnv(t testing.TB) *TestVDBEnv

NewTestVDBEnv instantiates and new couch db backed TestVDB

func (*TestVDBEnv) Cleanup Uses

func (env *TestVDBEnv) Cleanup()

Cleanup drops the test couch databases and closes the db provider

type VersionedDB Uses

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

VersionedDB implements VersionedDB interface

func (*VersionedDB) ApplyUpdates Uses

func (vdb *VersionedDB) ApplyUpdates(updates *statedb.UpdateBatch, height *version.Height) error

ApplyUpdates implements method in VersionedDB interface

func (*VersionedDB) BytesKeySupported Uses

func (vdb *VersionedDB) BytesKeySupported() bool

BytesKeySupported implements method in VersionedDB interface

func (*VersionedDB) ClearCachedVersions Uses

func (vdb *VersionedDB) ClearCachedVersions()

ClearCachedVersions clears committedVersions and revisionNumbers

func (*VersionedDB) Close Uses

func (vdb *VersionedDB) Close()

Close implements method in VersionedDB interface

func (*VersionedDB) ExecuteQuery Uses

func (vdb *VersionedDB) ExecuteQuery(namespace, query string) (statedb.ResultsIterator, error)

ExecuteQuery implements method in VersionedDB interface

func (*VersionedDB) ExecuteQueryWithMetadata Uses

func (vdb *VersionedDB) ExecuteQueryWithMetadata(namespace, query string, metadata map[string]interface{}) (statedb.QueryResultsIterator, error)

ExecuteQueryWithMetadata implements method in VersionedDB interface

func (*VersionedDB) GetCachedVersion Uses

func (vdb *VersionedDB) GetCachedVersion(namespace string, key string) (*version.Height, bool)

GetCachedVersion returns version from cache. `LoadCommittedVersions` function populates the cache

func (*VersionedDB) GetDBType Uses

func (vdb *VersionedDB) GetDBType() string

GetDBType returns the hosted stateDB

func (*VersionedDB) GetLatestSavePoint Uses

func (vdb *VersionedDB) GetLatestSavePoint() (*version.Height, error)

GetLatestSavePoint implements method in VersionedDB interface

func (*VersionedDB) GetState Uses

func (vdb *VersionedDB) GetState(namespace string, key string) (*statedb.VersionedValue, error)

GetState implements method in VersionedDB interface

func (*VersionedDB) GetStateMultipleKeys Uses

func (vdb *VersionedDB) GetStateMultipleKeys(namespace string, keys []string) ([]*statedb.VersionedValue, error)

GetStateMultipleKeys implements method in VersionedDB interface

func (*VersionedDB) GetStateRangeScanIterator Uses

func (vdb *VersionedDB) GetStateRangeScanIterator(namespace string, startKey string, endKey string) (statedb.ResultsIterator, error)

GetStateRangeScanIterator implements method in VersionedDB interface startKey is inclusive endKey is exclusive

func (*VersionedDB) GetStateRangeScanIteratorWithMetadata Uses

func (vdb *VersionedDB) GetStateRangeScanIteratorWithMetadata(namespace string, startKey string, endKey string, metadata map[string]interface{}) (statedb.QueryResultsIterator, error)

GetStateRangeScanIteratorWithMetadata implements method in VersionedDB interface startKey is inclusive endKey is exclusive metadata contains a map of additional query options

func (*VersionedDB) GetVersion Uses

func (vdb *VersionedDB) GetVersion(namespace string, key string) (*version.Height, error)

GetVersion implements method in VersionedDB interface

func (*VersionedDB) LoadCommittedVersions Uses

func (vdb *VersionedDB) LoadCommittedVersions(keys []*statedb.CompositeKey) error

LoadCommittedVersions populates committedVersions and revisionNumbers into cache. A bulk retrieve from couchdb is used to populate the cache. committedVersions cache will be used for state validation of readsets revisionNumbers cache will be used during commit phase for couchdb bulk updates

func (*VersionedDB) Open Uses

func (vdb *VersionedDB) Open() error

Open implements method in VersionedDB interface

func (*VersionedDB) ProcessIndexesForChaincodeDeploy Uses

func (vdb *VersionedDB) ProcessIndexesForChaincodeDeploy(namespace string, fileEntries []*ccprovider.TarFileEntry) error

ProcessIndexesForChaincodeDeploy creates indexes for a specified namespace

func (*VersionedDB) ValidateKeyValue Uses

func (vdb *VersionedDB) ValidateKeyValue(key string, value []byte) error

ValidateKeyValue implements method in VersionedDB interface

type VersionedDBProvider Uses

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

VersionedDBProvider implements interface VersionedDBProvider

func NewVersionedDBProvider Uses

func NewVersionedDBProvider(metricsProvider metrics.Provider) (*VersionedDBProvider, error)

NewVersionedDBProvider instantiates VersionedDBProvider

func (*VersionedDBProvider) Close Uses

func (provider *VersionedDBProvider) Close()

Close closes the underlying db instance

func (*VersionedDBProvider) GetDBHandle Uses

func (provider *VersionedDBProvider) GetDBHandle(dbName string) (statedb.VersionedDB, error)

GetDBHandle gets the handle to a named database

func (*VersionedDBProvider) HealthCheck Uses

func (provider *VersionedDBProvider) HealthCheck(ctx context.Context) error

HealthCheck checks to see if the couch instance of the peer is healthy

Directories

PathSynopsis
msgs

Package statecouchdb imports 22 packages (graph) and is imported by 5 packages. Updated 2019-08-10. Refresh now. Tools for package owners.