mirror of
https://github.com/arnaucube/hermez-node.git
synced 2026-02-07 03:16:45 +01:00
Make TxManager more robust
This commit is contained in:
@@ -27,6 +27,23 @@ type Batch struct {
|
||||
TotalFeesUSD *float64 `meddler:"total_fees_usd"`
|
||||
}
|
||||
|
||||
func NewEmptyBatch() *Batch {
|
||||
return &Batch{
|
||||
BatchNum: 0,
|
||||
EthBlockNum: 0,
|
||||
ForgerAddr: ethCommon.Address{},
|
||||
CollectedFees: make(map[TokenID]*big.Int),
|
||||
FeeIdxsCoordinator: make([]Idx, 0),
|
||||
StateRoot: big.NewInt(0),
|
||||
NumAccounts: 0,
|
||||
LastIdx: 0,
|
||||
ExitRoot: big.NewInt(0),
|
||||
ForgeL1TxsNum: nil,
|
||||
SlotNum: 0,
|
||||
TotalFeesUSD: nil,
|
||||
}
|
||||
}
|
||||
|
||||
// BatchNum identifies a batch
|
||||
type BatchNum int64
|
||||
|
||||
@@ -75,3 +92,23 @@ func NewBatchData() *BatchData {
|
||||
Batch: Batch{},
|
||||
}
|
||||
}
|
||||
|
||||
// BatchSync is a subset of Batch that contains fileds needed for the
|
||||
// synchronizer and coordinator
|
||||
// type BatchSync struct {
|
||||
// BatchNum BatchNum `meddler:"batch_num"`
|
||||
// EthBlockNum int64 `meddler:"eth_block_num"` // Ethereum block in which the batch is forged
|
||||
// ForgerAddr ethCommon.Address `meddler:"forger_addr"`
|
||||
// StateRoot *big.Int `meddler:"state_root,bigint"`
|
||||
// SlotNum int64 `meddler:"slot_num"` // Slot in which the batch is forged
|
||||
// }
|
||||
//
|
||||
// func NewBatchSync() *BatchSync {
|
||||
// return &BatchSync{
|
||||
// BatchNum: 0,
|
||||
// EthBlockNum: 0,
|
||||
// ForgerAddr: ethCommon.Address,
|
||||
// StateRoot: big.NewInt(0),
|
||||
// SlotNum: 0,
|
||||
// }
|
||||
// }
|
||||
|
||||
@@ -32,8 +32,10 @@ type AuctionConstants struct {
|
||||
func (c *AuctionConstants) SlotNum(blockNum int64) int64 {
|
||||
if blockNum >= c.GenesisBlockNum {
|
||||
return (blockNum - c.GenesisBlockNum) / int64(c.BlocksPerSlot)
|
||||
} else {
|
||||
// This result will be negative
|
||||
return (blockNum - c.GenesisBlockNum) / int64(c.BlocksPerSlot)
|
||||
}
|
||||
return -1
|
||||
}
|
||||
|
||||
// SlotBlocks returns the first and the last block numbers included in that slot
|
||||
|
||||
Reference in New Issue
Block a user