From 7d1b7deb01b8edda0b05063ebf757348933fd0c3 Mon Sep 17 00:00:00 2001 From: jholdstock Date: Thu, 31 Aug 2023 10:38:01 +0100 Subject: [PATCH] multi: Remove GetBlockHeaderVerbose. A slight performance improvement becase vspd can do everything it needs without the verbose block header. --- rpc/dcrd.go | 16 ++-------------- webapi/getfeeaddress.go | 5 +---- 2 files changed, 3 insertions(+), 18 deletions(-) diff --git a/rpc/dcrd.go b/rpc/dcrd.go index 0eaffdd..02b3fb7 100644 --- a/rpc/dcrd.go +++ b/rpc/dcrd.go @@ -223,14 +223,14 @@ func (c *DcrdRPC) NotifyBlocks() error { // GetBestBlockHeader uses getbestblockhash RPC, followed by getblockheader RPC, // to retrieve the header of the best block known to the dcrd instance. -func (c *DcrdRPC) GetBestBlockHeader() (*dcrdtypes.GetBlockHeaderVerboseResult, error) { +func (c *DcrdRPC) GetBestBlockHeader() (*wire.BlockHeader, error) { var bestBlockHash string err := c.Call(context.TODO(), "getbestblockhash", &bestBlockHash) if err != nil { return nil, err } - blockHeader, err := c.GetBlockHeaderVerbose(bestBlockHash) + blockHeader, err := c.GetBlockHeader(bestBlockHash) if err != nil { return nil, err } @@ -263,18 +263,6 @@ func (c *DcrdRPC) GetBlockHeader(blockHash string) (*wire.BlockHeader, error) { return &blockHeader, nil } -// GetBlockHeaderVerbose uses getblockheader RPC with verbose=true to retrieve -// the header of the requested block. -func (c *DcrdRPC) GetBlockHeaderVerbose(blockHash string) (*dcrdtypes.GetBlockHeaderVerboseResult, error) { - const verbose = true - var blockHeader dcrdtypes.GetBlockHeaderVerboseResult - err := c.Call(context.TODO(), "getblockheader", &blockHeader, blockHash, verbose) - if err != nil { - return nil, err - } - return &blockHeader, nil -} - // ExistsLiveTicket uses existslivetickets RPC to check if the provided ticket // hash is a live ticket known to the dcrd instance. func (c *DcrdRPC) ExistsLiveTicket(ticketHash string) (bool, error) { diff --git a/webapi/getfeeaddress.go b/webapi/getfeeaddress.go index 90c14ff..425ab3a 100644 --- a/webapi/getfeeaddress.go +++ b/webapi/getfeeaddress.go @@ -49,10 +49,7 @@ func (s *Server) getCurrentFee(dcrdClient *rpc.DcrdRPC) (dcrutil.Amount, error) return 0, err } - sDiff, err := dcrutil.NewAmount(bestBlock.SBits) - if err != nil { - return 0, err - } + sDiff := dcrutil.Amount(bestBlock.SBits) // Using a hard-coded amount for relay fee is acceptable here because this // amount is never actually used to construct or broadcast transactions. It