Faster synchronization with usage of HeaderByNumber instead of BlockByNumber
Oleksandr Brezhniev oleksandr.brezhniev@gmail.com
Tue, 23 Mar 2021 15:40:11 +0200
1 files changed,
5 insertions(+),
5 deletions(-)
jump to
M
eth/ethereum.go
→
eth/ethereum.go
@@ -245,15 +245,15 @@ blockNum := big.NewInt(number)
if number == -1 { blockNum = nil } - block, err := c.client.BlockByNumber(ctx, blockNum) + header, err := c.client.HeaderByNumber(ctx, blockNum) if err != nil { return nil, tracerr.Wrap(err) } b := &common.Block{ - Num: block.Number().Int64(), - Timestamp: time.Unix(int64(block.Time()), 0), - ParentHash: block.ParentHash(), - Hash: block.Hash(), + Num: header.Number.Int64(), + Timestamp: time.Unix(int64(header.Time), 0), + ParentHash: header.ParentHash, + Hash: header.Hash(), } return b, nil }