Documentation ¶
Index ¶
- type Collections
- func (*Collections) Descriptor() ([]byte, []int)
- func (m *Collections) GetMap() map[string]*KeysAndHashes
- func (*Collections) ProtoMessage()
- func (m *Collections) Reset()
- func (m *Collections) String() string
- func (m *Collections) XXX_DiscardUnknown()
- func (m *Collections) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Collections) XXX_Merge(src proto.Message)
- func (m *Collections) XXX_Size() int
- func (m *Collections) XXX_Unmarshal(b []byte) error
- type KeyAndHash
- func (*KeyAndHash) Descriptor() ([]byte, []int)
- func (m *KeyAndHash) GetHash() []byte
- func (m *KeyAndHash) GetKey() string
- func (*KeyAndHash) ProtoMessage()
- func (m *KeyAndHash) Reset()
- func (m *KeyAndHash) String() string
- func (m *KeyAndHash) XXX_DiscardUnknown()
- func (m *KeyAndHash) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *KeyAndHash) XXX_Merge(src proto.Message)
- func (m *KeyAndHash) XXX_Size() int
- func (m *KeyAndHash) XXX_Unmarshal(b []byte) error
- type KeysAndHashes
- func (*KeysAndHashes) Descriptor() ([]byte, []int)
- func (m *KeysAndHashes) GetList() []*KeyAndHash
- func (*KeysAndHashes) ProtoMessage()
- func (m *KeysAndHashes) Reset()
- func (m *KeysAndHashes) String() string
- func (m *KeysAndHashes) XXX_DiscardUnknown()
- func (m *KeysAndHashes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *KeysAndHashes) XXX_Merge(src proto.Message)
- func (m *KeysAndHashes) XXX_Size() int
- func (m *KeysAndHashes) XXX_Unmarshal(b []byte) error
- type PurgeMgr
- func (p *PurgeMgr) AddExpiredEntriesToUpdateBatch(pvtUpdates *privacyenabledstate.PvtUpdateBatch, ...) error
- func (p *PurgeMgr) BlockCommitDone() error
- func (p *PurgeMgr) PrepareForExpiringKeys(expiringAtBlk uint64)
- func (p *PurgeMgr) UpdateExpiryInfo(pvtUpdates *privacyenabledstate.PvtUpdateBatch, ...) error
- func (p *PurgeMgr) UpdateExpiryInfoOfPvtDataOfOldBlocks(pvtUpdates *privacyenabledstate.PvtUpdateBatch) error
- func (p *PurgeMgr) WaitForPrepareToFinish()
- type PvtdataKeys
- func (*PvtdataKeys) Descriptor() ([]byte, []int)
- func (m *PvtdataKeys) GetMap() map[string]*Collections
- func (*PvtdataKeys) ProtoMessage()
- func (m *PvtdataKeys) Reset()
- func (m *PvtdataKeys) String() string
- func (m *PvtdataKeys) XXX_DiscardUnknown()
- func (m *PvtdataKeys) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PvtdataKeys) XXX_Merge(src proto.Message)
- func (m *PvtdataKeys) XXX_Size() int
- func (m *PvtdataKeys) XXX_Unmarshal(b []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Collections ¶
type Collections struct { Map map[string]*KeysAndHashes `` /* 147-byte string literal not displayed */ XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Collections) Descriptor ¶
func (*Collections) Descriptor() ([]byte, []int)
func (*Collections) GetMap ¶
func (m *Collections) GetMap() map[string]*KeysAndHashes
func (*Collections) ProtoMessage ¶
func (*Collections) ProtoMessage()
func (*Collections) Reset ¶
func (m *Collections) Reset()
func (*Collections) String ¶
func (m *Collections) String() string
func (*Collections) XXX_DiscardUnknown ¶
func (m *Collections) XXX_DiscardUnknown()
func (*Collections) XXX_Marshal ¶
func (m *Collections) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*Collections) XXX_Merge ¶
func (m *Collections) XXX_Merge(src proto.Message)
func (*Collections) XXX_Size ¶
func (m *Collections) XXX_Size() int
func (*Collections) XXX_Unmarshal ¶
func (m *Collections) XXX_Unmarshal(b []byte) error
type KeyAndHash ¶
type KeyAndHash struct { Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` Hash []byte `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*KeyAndHash) Descriptor ¶
func (*KeyAndHash) Descriptor() ([]byte, []int)
func (*KeyAndHash) GetHash ¶
func (m *KeyAndHash) GetHash() []byte
func (*KeyAndHash) GetKey ¶
func (m *KeyAndHash) GetKey() string
func (*KeyAndHash) ProtoMessage ¶
func (*KeyAndHash) ProtoMessage()
func (*KeyAndHash) Reset ¶
func (m *KeyAndHash) Reset()
func (*KeyAndHash) String ¶
func (m *KeyAndHash) String() string
func (*KeyAndHash) XXX_DiscardUnknown ¶
func (m *KeyAndHash) XXX_DiscardUnknown()
func (*KeyAndHash) XXX_Marshal ¶
func (m *KeyAndHash) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*KeyAndHash) XXX_Merge ¶
func (m *KeyAndHash) XXX_Merge(src proto.Message)
func (*KeyAndHash) XXX_Size ¶
func (m *KeyAndHash) XXX_Size() int
func (*KeyAndHash) XXX_Unmarshal ¶
func (m *KeyAndHash) XXX_Unmarshal(b []byte) error
type KeysAndHashes ¶
type KeysAndHashes struct { List []*KeyAndHash `protobuf:"bytes,1,rep,name=list,proto3" json:"list,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*KeysAndHashes) Descriptor ¶
func (*KeysAndHashes) Descriptor() ([]byte, []int)
func (*KeysAndHashes) GetList ¶
func (m *KeysAndHashes) GetList() []*KeyAndHash
func (*KeysAndHashes) ProtoMessage ¶
func (*KeysAndHashes) ProtoMessage()
func (*KeysAndHashes) Reset ¶
func (m *KeysAndHashes) Reset()
func (*KeysAndHashes) String ¶
func (m *KeysAndHashes) String() string
func (*KeysAndHashes) XXX_DiscardUnknown ¶
func (m *KeysAndHashes) XXX_DiscardUnknown()
func (*KeysAndHashes) XXX_Marshal ¶
func (m *KeysAndHashes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*KeysAndHashes) XXX_Merge ¶
func (m *KeysAndHashes) XXX_Merge(src proto.Message)
func (*KeysAndHashes) XXX_Size ¶
func (m *KeysAndHashes) XXX_Size() int
func (*KeysAndHashes) XXX_Unmarshal ¶
func (m *KeysAndHashes) XXX_Unmarshal(b []byte) error
type PurgeMgr ¶
type PurgeMgr struct {
// contains filtered or unexported fields
}
func InstantiatePurgeMgr ¶
func InstantiatePurgeMgr(ledgerid string, db *privacyenabledstate.DB, btlPolicy pvtdatapolicy.BTLPolicy, bookkeepingProvider bookkeeping.Provider) (*PurgeMgr, error)
InstantiatePurgeMgr instantiates a PurgeMgr.
func (*PurgeMgr) AddExpiredEntriesToUpdateBatch ¶
func (p *PurgeMgr) AddExpiredEntriesToUpdateBatch( pvtUpdates *privacyenabledstate.PvtUpdateBatch, hashedUpdates *privacyenabledstate.HashedUpdateBatch) error
AddExpiredEntriesToUpdateBatch add the expired pvtdata to the updateBatch of next block to be committed
func (*PurgeMgr) BlockCommitDone ¶
BlockCommitDone is a callback to the PurgeMgr when the block is committed to the ledger These orphan entries for purge-schedule can be cleared off in bulk in a separate background routine as well If we maintain the following logic (i.e., clear off entries just after block commit), we need a TODO - We need to perform a check in the start, because there could be a crash between the block commit and invocation to this function resulting in the orphan entry for the deletes scheduled for the last block Also, the another way is to club the delete of these entries in the same batch that adds entries for the future expirations - however, that requires updating the expiry store by replaying the last block from blockchain in order to sustain a crash between entries updates and block commit
func (*PurgeMgr) PrepareForExpiringKeys ¶
PrepareForExpiringKeys gives a chance to the PurgeMgr to do background work in advance if any
func (*PurgeMgr) UpdateExpiryInfo ¶
func (p *PurgeMgr) UpdateExpiryInfo( pvtUpdates *privacyenabledstate.PvtUpdateBatch, hashedUpdates *privacyenabledstate.HashedUpdateBatch) error
func (*PurgeMgr) UpdateExpiryInfoOfPvtDataOfOldBlocks ¶
func (p *PurgeMgr) UpdateExpiryInfoOfPvtDataOfOldBlocks(pvtUpdates *privacyenabledstate.PvtUpdateBatch) error
UpdateExpirtyInfoPvtDataOfOldBlocks updates the existing expiry entries in the expiryKeeper with the given pvtUpdates
func (*PurgeMgr) WaitForPrepareToFinish ¶
func (p *PurgeMgr) WaitForPrepareToFinish()
WaitForPrepareToFinish holds the caller till the background goroutine launched by 'PrepareForExpiringKeys' is finished
type PvtdataKeys ¶
type PvtdataKeys struct { Map map[string]*Collections `` /* 147-byte string literal not displayed */ XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PvtdataKeys) Descriptor ¶
func (*PvtdataKeys) Descriptor() ([]byte, []int)
func (*PvtdataKeys) GetMap ¶
func (m *PvtdataKeys) GetMap() map[string]*Collections
func (*PvtdataKeys) ProtoMessage ¶
func (*PvtdataKeys) ProtoMessage()
func (*PvtdataKeys) Reset ¶
func (m *PvtdataKeys) Reset()
func (*PvtdataKeys) String ¶
func (m *PvtdataKeys) String() string
func (*PvtdataKeys) XXX_DiscardUnknown ¶
func (m *PvtdataKeys) XXX_DiscardUnknown()
func (*PvtdataKeys) XXX_Marshal ¶
func (m *PvtdataKeys) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PvtdataKeys) XXX_Merge ¶
func (m *PvtdataKeys) XXX_Merge(src proto.Message)
func (*PvtdataKeys) XXX_Size ¶
func (m *PvtdataKeys) XXX_Size() int
func (*PvtdataKeys) XXX_Unmarshal ¶
func (m *PvtdataKeys) XXX_Unmarshal(b []byte) error