mirror of
https://github.com/arnaucube/hermez-node.git
synced 2026-02-07 03:16:45 +01:00
Update missing parts, improve til, and more
- Node - Updated configuration to initialize the interface to all the smart contracts - Common - Moved BlockData and BatchData types to common so that they can be shared among: historydb, til and synchronizer - Remove hash.go (it was never used) - Remove slot.go (it was never used) - Remove smartcontractparams.go (it was never used, and appropriate structs are defined in `eth/`) - Comment state / status method until requirements of this method are properly defined, and move it to Synchronizer - Synchronizer - Simplify `Sync` routine to only sync one block per call, and return useful information. - Use BlockData and BatchData from common - Check that events belong to the expected block hash - In L1Batch, query L1UserTxs from HistoryDB - Fill ERC20 token information - Test AddTokens with test.Client - HistryDB - Use BlockData and BatchData from common - Add `GetAllTokens` method - Uncomment and update GetL1UserTxs (with corresponding tests) - Til - Rename all instances of RegisterToken to AddToken (to follow the smart contract implementation naming) - Use BlockData and BatchData from common - Move testL1CoordinatorTxs and testL2Txs to a separate struct from BatchData in Context - Start Context with BatchNum = 1 (which the protocol defines to be the first batchNum) - In every Batch, set StateRoot and ExitRoot to a non-nil big.Int (zero). - In all L1Txs, if LoadAmount is not used, set it to 0; if Amount is not used, set it to 0; so that no *big.Int is nil. - In L1UserTx, don't set BatchNum, because when L1UserTxs are created and obtained by the synchronizer, the BatchNum is not known yet (it's a synchronizer job to set it) - In L1UserTxs, set `UserOrigin` and set `ToForgeL1TxsNum`.
This commit is contained in:
@@ -67,6 +67,18 @@ type Node struct {
|
||||
Synchronizer struct {
|
||||
SyncLoopInterval Duration `validate:"required"`
|
||||
} `validate:"required"`
|
||||
SmartContracts struct {
|
||||
Rollup ethCommon.Address `validate:"required"`
|
||||
Auction ethCommon.Address `validate:"required"`
|
||||
TokenHEZ ethCommon.Address `validate:"required"`
|
||||
} `validate:"required"`
|
||||
EthClient struct {
|
||||
CallGasLimit uint64 `validate:"required"`
|
||||
DeployGasLimit uint64 `validate:"required"`
|
||||
GasPriceDiv uint64 `validate:"required"`
|
||||
ReceiptTimeout Duration `validate:"required"`
|
||||
IntervalReceiptLoop Duration `validate:"required"`
|
||||
} `validate:"required"`
|
||||
}
|
||||
|
||||
// Load loads a generic config.
|
||||
|
||||
Reference in New Issue
Block a user