Ori Newman
4736213ba4
[NOD-1528] Make data stores copy data on stage ( #1020 )
...
* [NOD-1528] Make data stores copy data on stage
* [NOD-1528] Add proto objects to serialize consensus state objects
* [NOD-1528] Fix receiver names
* [NOD-1528] Add copy to block store and utxo diff staging
* [NOD-1528] Return errors where needed
2020-11-10 18:32:42 +02:00
Ori Newman
9a344152aa
[NOD-1517] Properly initialize consensus with Genesis block ( #1009 )
...
* [NOD-1517] Properly initialize consensus with Genesis block
* [NOD-1517] Remove redundant AddHeaderTip
* [NOD-1517] Don't return nil from dbHash<->DomainHash converters
* [NOD-1517] Use pointer receivers
* [NOD-1517] Use domain block in dagParams
* [NOD-1517] Remove boolean from SelectedTip
* [NOD-1517] Rename hasHeader to isHeadersOnlyBlock
* [NOD-1517] Add comment
* [NOD-1517] Change genesis version
* [NOD-1517] Rename TestNewFactory->TestNewConsensus
2020-11-08 15:17:20 +02:00
Ori Newman
2eb0d946e5
[NOD-1509] Implement StageVirtualUTXOSet ( #999 )
...
* [NOD-1509] Implement StageVirtualUTXODiff
* [NOD-1509] Fix HasUTXOByOutpoint, get rid of database.ErrNotFound, and fix errors
2020-11-04 16:30:08 +02:00
Svarog
8dc246a2a7
[NOD-1498] Consensus State Store ( #992 )
...
* [NOD-1420] Start working on ConsensusStateManager. Might be redundant due to recent changes
* [NOD-1420] Convert model to externalapi in utxo_algerbra helpers
* [NOD-1420] Add UTXO-diff algebra
* [NOD-1420] Prepare skeleton of calculateAcceptanceDataAndMultiset
* [NOD-1420] Added skeleton for AddBlockToVirtual
* [NOD-1420] Implement PopulateTransactionWithUTXOEntries
* [NOD-1420] Implement restorePastUTXO
* [NOD-1420] Implement finality check
* [NOD-1420] Move handling of tips to consensusStateManager
* [NOD-1420] Implement calculateAcceptanceDataAndMultiset
* [NOD-1420] Start implementing resolveBlockStatus
* [NOD-1420] Implement resolveBlockStatus
* [NOD-1420] Update related fields in end of resolveSingleBlockStatus
* [NOD-1420] Start working on selectVirtualParents
* [NOD-1420] Implemented BlockHeap
* [NOD-1420] Implement selectVirtualParents
* [NOD-1420] Implement updateVirtual
* [NOD-1420] Added comments where they were missing
* [NOD-1420] Place all consensusStateManager functions in correct files
* [NOD-1420] Return the missing outpoints from populateTransactionWithUTXOEntriesFromVirtualOrDiff
* [NOD-1420] Outpoint.ID -> TransactionID
* [NOD-1420] Fix Stringer tests
* [NOD-1420] Copy hash.FromString into utils
* [NOD-1420] SetParents should return an error
* [NOD-1420] Remove all reachabilityManager references from consensusStateManager
* [NOD-1420] Remove VirtualData. Get the info from the stores where needed
* [NOD-1420] Invert parameters to IsAncestorOf
* [NOD-1420] Use model.AcceptanceData
* [NOD-1420] Don't return accumulatedMassBefore in error cases
* [NOD-1420] Don't expect store functions to return nil when the requested data was found - instead add HasXXX functions
* [NOD-1420] addTransactionToMultiset sets isCoinbase properly
* [NOD-1420] expected hash string length is externalapi.DomainHashSize * 2
* [NOD-1420] Rename reachabilityTree -> reachabilityManager + updateReindexRoot if isNextVirtualSelectedParent
* [NOD-1420] ValidateCoinbaseTransaction in csm.verifyAndBuildUTXO
* [NOD-1420] Re-write HAsUTXODiffChild
* [NOD-1420] delete past_utxo.go.bak
* [NOD-1420] Implement validateCoinbaseTransaction in CSM
* [NOD-1420] Imlemented missing functionality in ValidateTransactionAndPopulateWithConsensusData
* [NOD-1420] Moved merge depth logic to MergeDepthManager
* [NOD-1420] Add logs
* [NOD-1498] Implement tips-related methods of consensusStateStore
* [NOD-1498] Implement consensusStateStore virtualDiffParents functionality
* [NOD-1498] Implement ConsensusStateStore UTXO-Set part
* [NOD-1498] Implement rest of consensusStateStore methods
* [NOD-1498] Use io.ReadFull instead of r.Read
* [NOD-1498] Added comments
* [NOD-1498] Move utxo serialization to protobufs
* [NOD-1498] Add comments
* [NOD-1498] Minor fixes in ConsensusStateStore
* [NOD-1498] Use empty bucket key + simplify serializeUTXOEntry
2020-11-03 14:42:26 +02:00