mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-06-01 19:56:45 +00:00

* Remove pruningPointUTXOSetStaging and implement UpdatePruningPointUTXOSet. * Implement StageStartSavingNewPruningPointUTXOSet, HadStartedSavingNewPruningPointUTXOSet, and FinishSavingNewPruningPointUTXOSet. * Fix a bad return. * Implement UpdatePruningPointUTXOSetIfRequired. * Call UpdatePruningPointUTXOSetIfRequired on consensus creation. * Rename savingNewPruningPointUTXOSetKey to updatingPruningPointUTXOSet. * Add a log. * Add calls to runtime.GC() at its start and end. * Rename a variable. * Replace calls to runtime.GC to calls to LogMemoryStats. * Wrap the contents of LogMemoryStats in a log closure.
30 lines
1.5 KiB
Go
30 lines
1.5 KiB
Go
package model
|
|
|
|
import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
|
|
|
// PruningStore represents a store for the current pruning state
|
|
type PruningStore interface {
|
|
Store
|
|
StagePruningPoint(pruningPointBlockHash *externalapi.DomainHash)
|
|
StagePruningPointCandidate(candidate *externalapi.DomainHash)
|
|
IsStaged() bool
|
|
PruningPointCandidate(dbContext DBReader) (*externalapi.DomainHash, error)
|
|
HasPruningPointCandidate(dbContext DBReader) (bool, error)
|
|
PruningPoint(dbContext DBReader) (*externalapi.DomainHash, error)
|
|
HasPruningPoint(dbContext DBReader) (bool, error)
|
|
|
|
StageStartUpdatingPruningPointUTXOSet()
|
|
HadStartedUpdatingPruningPointUTXOSet(dbContext DBWriter) (bool, error)
|
|
FinishUpdatingPruningPointUTXOSet(dbContext DBWriter) error
|
|
UpdatePruningPointUTXOSet(dbContext DBWriter, utxoSetIterator ReadOnlyUTXOSetIterator) error
|
|
|
|
ClearImportedPruningPointUTXOs(dbContext DBWriter) error
|
|
AppendImportedPruningPointUTXOs(dbTx DBTransaction, outpointAndUTXOEntryPairs []*externalapi.OutpointAndUTXOEntryPair) error
|
|
ImportedPruningPointUTXOIterator(dbContext DBReader) (ReadOnlyUTXOSetIterator, error)
|
|
ClearImportedPruningPointMultiset(dbContext DBWriter) error
|
|
ImportedPruningPointMultiset(dbContext DBReader) (Multiset, error)
|
|
UpdateImportedPruningPointMultiset(dbTx DBTransaction, multiset Multiset) error
|
|
CommitImportedPruningPointUTXOSet(dbContext DBWriter) error
|
|
PruningPointUTXOs(dbContext DBReader, offset int, limit int) ([]*externalapi.OutpointAndUTXOEntryPair, error)
|
|
}
|