Documentation ¶
Index ¶
- Variables
- func ConstructDataEntriesFromBlocksPvtData(blocksPvtData map[uint64][]*ledger.TxPvtData) map[uint64][]*DataEntry
- func DecodeDataValue(datavalueBytes []byte) (*rwset.CollectionPvtReadWriteSet, error)
- func DecodeMissingDataValue(bitmapBytes []byte) (*bitset.BitSet, error)
- func DeriveKeys(expiryEntry *ExpiryEntry) ([]*DataKey, []*MissingDataKey)
- func EncodeDataKey(key *DataKey) []byte
- func EncodeDataValue(collData *rwset.CollectionPvtReadWriteSet) ([]byte, error)
- func EncodeElgDeprioMissingDataKey(key *MissingDataKey) []byte
- func EncodeElgPrioMissingDataKey(key *MissingDataKey) []byte
- func EncodeExpiryKey(expiryKey ExpiryKey) []byte
- func EncodeExpiryValue(expiryData *ExpiryData) ([]byte, error)
- func EncodeInelgMissingDataKey(key *MissingDataKey) []byte
- func EncodeMissingDataValue(bitmap *bitset.BitSet) ([]byte, error)
- func GetLastUpdatedOldBlocksList(missingKeysIndexDB DBHandle) ([]uint64, error)
- func GetMissingPvtDataInfoForMostRecentBlocks(group []byte, maxBlock int, lastCommittedBlk uint64, ...) (ledger.MissingPvtDataInfo, error)
- func IsExpired(key NsCollBlk, btl pvtdatapolicy.BTLPolicy, latestBlkNum uint64) (bool, error)
- func PassesFilter(dataKey *DataKey, filter ledger.PvtNsCollFilter) bool
- func ProcessCollsEligibilityEnabled(committingBlk uint64, nsCollMap map[string][]string, ...) error
- func ResetLastUpdatedOldBlocksList(missingKeysIndexDB DBHandle) error
- func V11DecodeKV(k, v []byte, filter ledger.PvtNsCollFilter) (*ledger.TxPvtData, error)
- func V11Format(datakeyBytes []byte) (bool, error)
- func V11RetrievePvtdata(pvtDataResults map[string][]byte, filter ledger.PvtNsCollFilter) ([]*ledger.TxPvtData, error)
- type CacheProvider
- type CollElgProcSync
- type DBHandle
- type DataAndExpiryEntries
- type DataEntry
- type DataKey
- type ExpiryData
- type ExpiryEntry
- type ExpiryKey
- type MissingDataKey
- type NsCollBlk
- type OldBlockDataProcessor
- func (p *OldBlockDataProcessor) ConstructDBUpdateBatch() ([]*couchdb.CouchDoc, *leveldbhelper.UpdateBatch, error)
- func (p *OldBlockDataProcessor) PrepareDataAndExpiryEntries(blocksPvtData map[uint64][]*ledger.TxPvtData) error
- func (p *OldBlockDataProcessor) PrepareMissingDataEntriesToReflectPriority(deprioritizedList ledger.MissingPvtDataInfo) error
- func (p *OldBlockDataProcessor) PrepareMissingDataEntriesToReflectReconciledData() error
- type Provider
- type StoreEntries
- type StoreExt
- type TxPvtdataAssembler
Constants ¶
This section is empty.
Variables ¶
View Source
var ( PendingCommitKey = []byte{0} ElgPrioritizedMissingDataGroup = []byte{4} LastUpdatedOldBlocksKey = []byte{7} ElgDeprioritizedMissingDataGroup = []byte{8} )
Functions ¶
func DecodeDataValue ¶
func DecodeDataValue(datavalueBytes []byte) (*rwset.CollectionPvtReadWriteSet, error)
func DecodeMissingDataValue ¶
func DeriveKeys ¶
func DeriveKeys(expiryEntry *ExpiryEntry) ([]*DataKey, []*MissingDataKey)
DeriveKeys constructs dataKeys and missingDataKey from an expiryEntry
func EncodeDataKey ¶
func EncodeDataValue ¶
func EncodeDataValue(collData *rwset.CollectionPvtReadWriteSet) ([]byte, error)
func EncodeElgDeprioMissingDataKey ¶ added in v0.1.5
func EncodeElgDeprioMissingDataKey(key *MissingDataKey) []byte
func EncodeElgPrioMissingDataKey ¶ added in v0.1.5
func EncodeElgPrioMissingDataKey(key *MissingDataKey) []byte
func EncodeExpiryKey ¶
func EncodeExpiryValue ¶
func EncodeExpiryValue(expiryData *ExpiryData) ([]byte, error)
func EncodeInelgMissingDataKey ¶ added in v0.1.5
func EncodeInelgMissingDataKey(key *MissingDataKey) []byte
func GetMissingPvtDataInfoForMostRecentBlocks ¶
func GetMissingPvtDataInfoForMostRecentBlocks(group []byte, maxBlock int, lastCommittedBlk uint64, btlPolicy pvtdatapolicy.BTLPolicy, missingKeysIndexDB DBHandle) (ledger.MissingPvtDataInfo, error)
GetMissingPvtDataInfoForMostRecentBlocks
func PassesFilter ¶
func PassesFilter(dataKey *DataKey, filter ledger.PvtNsCollFilter) bool
func ProcessCollsEligibilityEnabled ¶
func ProcessCollsEligibilityEnabled(committingBlk uint64, nsCollMap map[string][]string, collElgProcSync *CollElgProcSync, missingKeysIndexDB DBHandle) error
ProcessCollsEligibilityEnabled
func V11DecodeKV ¶
func V11RetrievePvtdata ¶
Types ¶
type CacheProvider ¶ added in v0.1.6
CacheProvider manages a private data cache
type CollElgProcSync ¶ added in v0.1.4
type CollElgProcSync struct {
// contains filtered or unexported fields
}
func NewCollElgProcSync ¶ added in v0.1.4
func NewCollElgProcSync(purgerLock *sync.Mutex, missingKeysIndexDB *leveldbhelper.DBHandle, batchesInterval, maxBatchSize int) *CollElgProcSync
func (*CollElgProcSync) LaunchCollElgProc ¶ added in v0.1.4
func (c *CollElgProcSync) LaunchCollElgProc()
func (*CollElgProcSync) WaitForDone ¶ added in v0.1.4
func (c *CollElgProcSync) WaitForDone()
type DBHandle ¶ added in v0.1.5
type DBHandle interface { WriteBatch(batch *leveldbhelper.UpdateBatch, sync bool) error Delete(key []byte, sync bool) error Get(key []byte) ([]byte, error) GetIterator(startKey []byte, endKey []byte) (*leveldbhelper.Iterator, error) Put(key []byte, value []byte, sync bool) error NewUpdateBatch() *leveldbhelper.UpdateBatch }
DBHandle is an handle to a named db
type DataAndExpiryEntries ¶ added in v0.1.5
type DataAndExpiryEntries struct { DataEntries map[DataKey]*rwset.CollectionPvtReadWriteSet ExpiryEntries map[ExpiryKey]*ExpiryData }
type DataEntry ¶
type DataEntry struct { Key *DataKey Value *rwset.CollectionPvtReadWriteSet }
type DataKey ¶
func DecodeDatakey ¶
type ExpiryData ¶
type ExpiryData pvtdatastorage.ExpiryData
func DecodeExpiryValue ¶
func DecodeExpiryValue(expiryValueBytes []byte) (*ExpiryData, error)
func NewExpiryData ¶
func NewExpiryData() *ExpiryData
func (*ExpiryData) AddMissingData ¶
func (e *ExpiryData) AddMissingData(ns, coll string)
func (*ExpiryData) AddPresentData ¶
func (e *ExpiryData) AddPresentData(ns, coll string, txNum uint64)
func (*ExpiryData) ProtoMessage ¶
func (*ExpiryData) ProtoMessage()
func (*ExpiryData) Reset ¶
func (e *ExpiryData) Reset()
func (*ExpiryData) String ¶
func (e *ExpiryData) String() string
type ExpiryEntry ¶
type ExpiryEntry struct { Key *ExpiryKey Value *ExpiryData }
type ExpiryKey ¶
func DecodeExpiryKey ¶
type MissingDataKey ¶
type MissingDataKey struct {
NsCollBlk
}
func DecodeElgMissingDataKey ¶ added in v0.1.5
func DecodeElgMissingDataKey(keyBytes []byte) *MissingDataKey
func DecodeInelgMissingDataKey ¶ added in v0.1.5
func DecodeInelgMissingDataKey(keyBytes []byte) *MissingDataKey
type OldBlockDataProcessor ¶ added in v0.1.5
type OldBlockDataProcessor struct {
// contains filtered or unexported fields
}
func NewOldBlockDataProcessor ¶ added in v0.1.5
func NewOldBlockDataProcessor( btlPolicy pvtdatapolicy.BTLPolicy, getExpiryDataFromEntriesOrStore getExpiryDataFromEntriesOrStore, preparePvtDataDoc preparePvtDataDoc, missingKeysIndexDB DBHandle) *OldBlockDataProcessor
func (*OldBlockDataProcessor) ConstructDBUpdateBatch ¶ added in v0.1.5
func (p *OldBlockDataProcessor) ConstructDBUpdateBatch() ([]*couchdb.CouchDoc, *leveldbhelper.UpdateBatch, error)
func (*OldBlockDataProcessor) PrepareDataAndExpiryEntries ¶ added in v0.1.5
func (p *OldBlockDataProcessor) PrepareDataAndExpiryEntries(blocksPvtData map[uint64][]*ledger.TxPvtData) error
func (*OldBlockDataProcessor) PrepareMissingDataEntriesToReflectPriority ¶ added in v0.1.5
func (p *OldBlockDataProcessor) PrepareMissingDataEntriesToReflectPriority(deprioritizedList ledger.MissingPvtDataInfo) error
func (*OldBlockDataProcessor) PrepareMissingDataEntriesToReflectReconciledData ¶ added in v0.1.5
func (p *OldBlockDataProcessor) PrepareMissingDataEntriesToReflectReconciledData() error
type StoreEntries ¶
type StoreEntries struct { DataEntries []*DataEntry ExpiryEntries []*ExpiryEntry ElgMissingDataEntries map[MissingDataKey]*bitset.BitSet InelgMissingDataEntries map[MissingDataKey]*bitset.BitSet }
func PrepareStoreEntries ¶
func PrepareStoreEntries(blockNum uint64, pvtData []*ledger.TxPvtData, btlPolicy pvtdatapolicy.BTLPolicy, missingPvtData ledger.TxMissingPvtDataMap) (*StoreEntries, error)
type StoreExt ¶ added in v0.1.6
type StoreExt interface { xstorageapi.PrivateDataStore UpdateLastCommittedBlockNum(blockNum uint64) }
StoreExt extends PrivateDataStore with additional functions
type TxPvtdataAssembler ¶
type TxPvtdataAssembler struct {
// contains filtered or unexported fields
}
func NewTxPvtdataAssembler ¶
func NewTxPvtdataAssembler(blockNum, txNum uint64) *TxPvtdataAssembler
func (*TxPvtdataAssembler) Add ¶
func (a *TxPvtdataAssembler) Add(ns string, collPvtWset *rwset.CollectionPvtReadWriteSet)
func (*TxPvtdataAssembler) GetTxPvtdata ¶
func (a *TxPvtdataAssembler) GetTxPvtdata() *ledger.TxPvtData
Click to show internal directories.
Click to hide internal directories.