Merge pull request #677 from hermeznetwork/feature/fastsync-get-headerByNumber

Faster synchronization by fetching only block headers
This commit is contained in:
Eduard S
2021-03-29 11:10:24 +02:00
committed by GitHub

View File

@@ -245,15 +245,15 @@ func (c *EthereumClient) EthBlockByNumber(ctx context.Context, number int64) (*c
if number == -1 { if number == -1 {
blockNum = nil blockNum = nil
} }
block, err := c.client.BlockByNumber(ctx, blockNum) header, err := c.client.HeaderByNumber(ctx, blockNum)
if err != nil { if err != nil {
return nil, tracerr.Wrap(err) return nil, tracerr.Wrap(err)
} }
b := &common.Block{ b := &common.Block{
Num: block.Number().Int64(), Num: header.Number.Int64(),
Timestamp: time.Unix(int64(block.Time()), 0), Timestamp: time.Unix(int64(header.Time), 0),
ParentHash: block.ParentHash(), ParentHash: header.ParentHash,
Hash: block.Hash(), Hash: header.Hash(),
} }
return b, nil return b, nil
} }