Documentation
¶
Index ¶
- func MakeGraphPastCone(vid *vertex.WrappedTx, maxVertices ...int) graph.Graph[string, string]
- func SaveGraphPastCone(vid *vertex.WrappedTx, fname string)
- func SavePastConeFromTxStore(tip ledger.TransactionID, txStore global.TxBytesGet, oldestSlot ledger.Slot, ...)
- type MemDAG
- func (d *MemDAG) AddVertexNoLock(vid *vertex.WrappedTx)
- func (d *MemDAG) CheckTransactionInLRB(txid ledger.TransactionID, maxDepth int) (lrbid ledger.TransactionID, foundAtDepth int)
- func (d *MemDAG) EvidenceBranchSlot(s ledger.Slot, isHealthy bool)
- func (d *MemDAG) FetchSummarySupplyAndInflation(nBack int) *multistate.SummarySupplyAndInflation
- func (d *MemDAG) GetStateReaderForTheBranch(branchID ledger.TransactionID) multistate.IndexedStateReader
- func (d *MemDAG) GetStemWrappedOutput(branch *ledger.TransactionID) (ret vertex.WrappedOutput)
- func (d *MemDAG) GetVertex(txid *ledger.TransactionID) *vertex.WrappedTx
- func (d *MemDAG) GetVertexNoLock(txid *ledger.TransactionID) *vertex.WrappedTx
- func (d *MemDAG) HeaviestStateForLatestTimeSlot() multistate.SugaredStateReader
- func (d *MemDAG) HeaviestStateForLatestTimeSlotWithBaseline() (multistate.SugaredStateReader, *vertex.WrappedTx)
- func (d *MemDAG) Info(verbose ...bool) string
- func (d *MemDAG) InfoLines(verbose ...bool) *lines.Lines
- func (d *MemDAG) LatestBranchSlots() (slot, healthySlot ledger.Slot, synced bool)
- func (d *MemDAG) LatestHealthySlot() ledger.Slot
- func (d *MemDAG) LatestReliableState() (multistate.SugaredStateReader, error)
- func (d *MemDAG) LinesVerticesInSlotAndAfter(slot ledger.Slot) *lines.Lines
- func (d *MemDAG) MakeGraph(additionalVertices ...*vertex.WrappedTx) graph.Graph[string, string]
- func (d *MemDAG) MakeSequencerGraph() graph.Graph[string, string]
- func (d *MemDAG) MustLatestReliableState() multistate.SugaredStateReader
- func (d *MemDAG) NumStateReaders() int
- func (d *MemDAG) NumVertices() int
- func (d *MemDAG) ParseMilestoneData(msVID *vertex.WrappedTx) (ret *ledger.MilestoneData)
- func (d *MemDAG) PurgeCachedStateReaders() (int, int)
- func (d *MemDAG) PurgeDeletedVertices(deleted []*vertex.WrappedTx)
- func (d *MemDAG) QueryTxIDStatus(txid *ledger.TransactionID) (ret vertex.TxIDStatus)
- func (d *MemDAG) RecreateVertexMap()
- func (d *MemDAG) SaveGraph(fname string)
- func (d *MemDAG) SaveSequencerGraph(fname string)
- func (d *MemDAG) SaveTree(fname string)
- func (d *MemDAG) Vertices() []*vertex.WrappedTx
- func (d *MemDAG) VerticesDescending() []*vertex.WrappedTx
- func (d *MemDAG) VerticesFiltered(filterByID func(txid *ledger.TransactionID) bool) []*vertex.WrappedTx
- func (d *MemDAG) VerticesInSlotAndAfter(slot ledger.Slot) []*vertex.WrappedTx
- func (d *MemDAG) WaitUntilTransactionInHeaviestState(txid ledger.TransactionID, timeout ...time.Duration) (*vertex.WrappedTx, error)
- func (d *MemDAG) WithGlobalWriteLock(fun func())
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MakeGraphPastCone ¶
func SaveGraphPastCone ¶
func SavePastConeFromTxStore ¶
func SavePastConeFromTxStore(tip ledger.TransactionID, txStore global.TxBytesGet, oldestSlot ledger.Slot, fname string)
Types ¶
type MemDAG ¶
type MemDAG struct {
// contains filtered or unexported fields
}
MemDAG is a global map of all in-memory vertices of the transaction DAG
func MakeDAGFromTxStore ¶
func MakeDAGFromTxStore(txStore global.TxBytesGet, oldestSlot ledger.Slot, tips ...ledger.TransactionID) *MemDAG
MakeDAGFromTxStore creates dummy MemDAG from past cones of tips. Only uses txBytes from txStore It is used in testing, to visualize real transaction MemDAG, not the pruned cache kept in the node
func (*MemDAG) AddVertexNoLock ¶
func (*MemDAG) CheckTransactionInLRB ¶
func (d *MemDAG) CheckTransactionInLRB(txid ledger.TransactionID, maxDepth int) (lrbid ledger.TransactionID, foundAtDepth int)
func (*MemDAG) EvidenceBranchSlot ¶
EvidenceBranchSlot maintains cached values
func (*MemDAG) FetchSummarySupplyAndInflation ¶
func (d *MemDAG) FetchSummarySupplyAndInflation(nBack int) *multistate.SummarySupplyAndInflation
func (*MemDAG) GetStateReaderForTheBranch ¶
func (d *MemDAG) GetStateReaderForTheBranch(branchID ledger.TransactionID) multistate.IndexedStateReader
func (*MemDAG) GetStemWrappedOutput ¶
func (d *MemDAG) GetStemWrappedOutput(branch *ledger.TransactionID) (ret vertex.WrappedOutput)
func (*MemDAG) GetVertexNoLock ¶
func (d *MemDAG) GetVertexNoLock(txid *ledger.TransactionID) *vertex.WrappedTx
func (*MemDAG) HeaviestStateForLatestTimeSlot ¶
func (d *MemDAG) HeaviestStateForLatestTimeSlot() multistate.SugaredStateReader
func (*MemDAG) HeaviestStateForLatestTimeSlotWithBaseline ¶
func (d *MemDAG) HeaviestStateForLatestTimeSlotWithBaseline() (multistate.SugaredStateReader, *vertex.WrappedTx)
func (*MemDAG) LatestBranchSlots ¶
LatestBranchSlots return latest committed slots and the sync flag. The latter indicates if current node is in sync with the network. If network is unreachable or nobody else is active it will return false Node is out of sync if current slots are behind from now Being synced or not is subjective
func (*MemDAG) LatestHealthySlot ¶
func (*MemDAG) LatestReliableState ¶
func (d *MemDAG) LatestReliableState() (multistate.SugaredStateReader, error)
func (*MemDAG) LinesVerticesInSlotAndAfter ¶
func (*MemDAG) MakeSequencerGraph ¶
func (*MemDAG) MustLatestReliableState ¶
func (d *MemDAG) MustLatestReliableState() multistate.SugaredStateReader
func (*MemDAG) NumStateReaders ¶
func (*MemDAG) ParseMilestoneData ¶
func (d *MemDAG) ParseMilestoneData(msVID *vertex.WrappedTx) (ret *ledger.MilestoneData)
func (*MemDAG) PurgeCachedStateReaders ¶
func (*MemDAG) PurgeDeletedVertices ¶
PurgeDeletedVertices with global lock
func (*MemDAG) QueryTxIDStatus ¶
func (d *MemDAG) QueryTxIDStatus(txid *ledger.TransactionID) (ret vertex.TxIDStatus)
QueryTxIDStatus returns vertex mode, tx status and error of the vertex
func (*MemDAG) RecreateVertexMap ¶
func (d *MemDAG) RecreateVertexMap()
RecreateVertexMap to avoid memory leak
func (*MemDAG) SaveSequencerGraph ¶
func (*MemDAG) VerticesDescending ¶
func (*MemDAG) VerticesFiltered ¶
func (*MemDAG) VerticesInSlotAndAfter ¶
func (*MemDAG) WaitUntilTransactionInHeaviestState ¶
func (d *MemDAG) WaitUntilTransactionInHeaviestState(txid ledger.TransactionID, timeout ...time.Duration) (*vertex.WrappedTx, error)
WaitUntilTransactionInHeaviestState for testing mostly
func (*MemDAG) WithGlobalWriteLock ¶
func (d *MemDAG) WithGlobalWriteLock(fun func())