mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-06-04 21:26:42 +00:00

* Calculate GHOSTDAG, reachability etc for each level * Don't preallocate cache for dag stores except level 0 and reduce the number of connections in the integration test to 32 * Reduce the number of connections in the integration test to 16 * Increase page file * BuildPruningPointProof * BuildPruningPointProof * Add PruningProofManager * Implement ApplyPruningPointProof * Add prefix and fix blockAtDepth and fill headersByLevel * Some bug fixes * Include all relevant blocks for each level in the proof * Fix syncAndValidatePruningPointProof to return the right block hash * Fix block window * Fix isAncestorOfPruningPoint * Ban for rule errors on pruning proof * Find common ancestor for blockAtDepthMAtNextLevel * Use pruning proof in TestValidateAndInsertImportedPruningPoint * stage status and finality point for proof blocks * Uncomment golint * Change test timeouts * Calculate merge set for ApplyPruningPointProof * Increase test timeout * Add better caching for daa window store * Return to default timeout * Add ErrPruningProofMissesBlocksBelowPruningPoint * Add errDAAWindowBlockNotFound * Force connection loop next iteration on connection manager stop * Revert to Test64IncomingConnections * Remove BlockAtDepth from DAGTraversalManager * numBullies->16 * Set page file size to 8gb * Increase p2p max message size * Test64IncomingConnections->Test16IncomingConnections * Add comment for PruningProofM * Add comment in `func (c *ConnectionManager) Stop()` * Rename isAncestorOfPruningPoint->isAncestorOfSelectedTip * Revert page file to 16gb * Improve ExpectedHeaderPruningPoint perf * Fix comment * Revert "Improve ExpectedHeaderPruningPoint perf" This reverts commit bca1080e7140c78d510f51bbea858ae280c2f38e. * Don't test windows
153 lines
3.8 KiB
Go
153 lines
3.8 KiB
Go
package consensus
|
|
|
|
import (
|
|
"github.com/kaspanet/kaspad/domain/consensus/model"
|
|
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
|
"github.com/kaspanet/kaspad/domain/consensus/model/testapi"
|
|
"github.com/kaspanet/kaspad/infrastructure/db/database"
|
|
)
|
|
|
|
func (tc *testConsensus) DatabaseContext() model.DBManager {
|
|
return tc.databaseContext
|
|
}
|
|
|
|
func (tc *testConsensus) Database() database.Database {
|
|
return tc.database
|
|
}
|
|
|
|
func (tc *testConsensus) AcceptanceDataStore() model.AcceptanceDataStore {
|
|
return tc.acceptanceDataStore
|
|
}
|
|
|
|
func (tc *testConsensus) BlockHeaderStore() model.BlockHeaderStore {
|
|
return tc.blockHeaderStore
|
|
}
|
|
|
|
func (tc *testConsensus) BlockRelationStore() model.BlockRelationStore {
|
|
return tc.blockRelationStores[0]
|
|
}
|
|
|
|
func (tc *testConsensus) BlockStatusStore() model.BlockStatusStore {
|
|
return tc.blockStatusStore
|
|
}
|
|
|
|
func (tc *testConsensus) BlockStore() model.BlockStore {
|
|
return tc.blockStore
|
|
}
|
|
|
|
func (tc *testConsensus) ConsensusStateStore() model.ConsensusStateStore {
|
|
return tc.consensusStateStore
|
|
}
|
|
|
|
func (tc *testConsensus) GHOSTDAGDataStore() model.GHOSTDAGDataStore {
|
|
return tc.ghostdagDataStores[0]
|
|
}
|
|
|
|
func (tc *testConsensus) GHOSTDAGDataStores() []model.GHOSTDAGDataStore {
|
|
return tc.ghostdagDataStores
|
|
}
|
|
|
|
func (tc *testConsensus) HeaderTipsStore() model.HeaderSelectedTipStore {
|
|
return tc.headersSelectedTipStore
|
|
}
|
|
|
|
func (tc *testConsensus) MultisetStore() model.MultisetStore {
|
|
return tc.multisetStore
|
|
}
|
|
|
|
func (tc *testConsensus) PruningStore() model.PruningStore {
|
|
return tc.pruningStore
|
|
}
|
|
|
|
func (tc *testConsensus) ReachabilityDataStore() model.ReachabilityDataStore {
|
|
return tc.reachabilityDataStores[0]
|
|
}
|
|
|
|
func (tc *testConsensus) UTXODiffStore() model.UTXODiffStore {
|
|
return tc.utxoDiffStore
|
|
}
|
|
|
|
func (tc *testConsensus) BlockBuilder() testapi.TestBlockBuilder {
|
|
return tc.testBlockBuilder
|
|
}
|
|
|
|
func (tc *testConsensus) BlockProcessor() model.BlockProcessor {
|
|
return tc.blockProcessor
|
|
}
|
|
|
|
func (tc *testConsensus) BlockValidator() model.BlockValidator {
|
|
return tc.blockValidator
|
|
}
|
|
|
|
func (tc *testConsensus) CoinbaseManager() model.CoinbaseManager {
|
|
return tc.coinbaseManager
|
|
}
|
|
|
|
func (tc *testConsensus) ConsensusStateManager() testapi.TestConsensusStateManager {
|
|
return tc.testConsensusStateManager
|
|
}
|
|
|
|
func (tc *testConsensus) DAGTopologyManager() model.DAGTopologyManager {
|
|
return tc.dagTopologyManagers[0]
|
|
}
|
|
|
|
func (tc *testConsensus) DAGTraversalManager() model.DAGTraversalManager {
|
|
return tc.dagTraversalManager
|
|
}
|
|
|
|
func (tc *testConsensus) DifficultyManager() model.DifficultyManager {
|
|
return tc.difficultyManager
|
|
}
|
|
|
|
func (tc *testConsensus) GHOSTDAGManager() model.GHOSTDAGManager {
|
|
return tc.ghostdagManagers[0]
|
|
}
|
|
|
|
func (tc *testConsensus) HeaderTipsManager() model.HeadersSelectedTipManager {
|
|
return tc.headerTipsManager
|
|
}
|
|
|
|
func (tc *testConsensus) MergeDepthManager() model.MergeDepthManager {
|
|
return tc.mergeDepthManager
|
|
}
|
|
|
|
func (tc *testConsensus) PastMedianTimeManager() model.PastMedianTimeManager {
|
|
return tc.pastMedianTimeManager
|
|
}
|
|
|
|
func (tc *testConsensus) PruningManager() model.PruningManager {
|
|
return tc.pruningManager
|
|
}
|
|
|
|
func (tc *testConsensus) ReachabilityManager() testapi.TestReachabilityManager {
|
|
return tc.testReachabilityManager
|
|
}
|
|
|
|
func (tc *testConsensus) SyncManager() model.SyncManager {
|
|
return tc.syncManager
|
|
}
|
|
|
|
func (tc *testConsensus) TransactionValidator() testapi.TestTransactionValidator {
|
|
return tc.testTransactionValidator
|
|
}
|
|
|
|
func (tc *testConsensus) FinalityManager() model.FinalityManager {
|
|
return tc.finalityManager
|
|
}
|
|
|
|
func (tc *testConsensus) FinalityStore() model.FinalityStore {
|
|
return tc.finalityStore
|
|
}
|
|
|
|
func (tc *testConsensus) HeadersSelectedChainStore() model.HeadersSelectedChainStore {
|
|
return tc.headersSelectedChainStore
|
|
}
|
|
|
|
func (tc *testConsensus) DAABlocksStore() model.DAABlocksStore {
|
|
return tc.daaBlocksStore
|
|
}
|
|
|
|
func (tc *testConsensus) Consensus() externalapi.Consensus {
|
|
return tc
|
|
}
|