From 1deeb05627fcdf7562ac8c255f8f9387385b895d Mon Sep 17 00:00:00 2001 From: Dave Collins Date: Wed, 24 Jul 2013 12:31:14 -0500 Subject: [PATCH] Add a few log error messages. In addition to returning errors to the caller, log the error with a prefix in a few key places that helps identify the origin for errors. In some cases, the underlying error comes from a different subsystem such as the SQL database driver and the error messages can be fairly generic. --- accept.go | 4 ++++ chain.go | 1 + 2 files changed, 5 insertions(+) diff --git a/accept.go b/accept.go index 94fa73c7..58a7d150 100644 --- a/accept.go +++ b/accept.go @@ -19,6 +19,7 @@ func (b *BlockChain) maybeAcceptBlock(block *btcutil.Block) error { // if this is the genesis block. prevNode, err := b.getPrevNodeFromBlock(block) if err != nil { + log.Errorf("getPrevNodeFromBlock: %v", err) return err } @@ -34,6 +35,7 @@ func (b *BlockChain) maybeAcceptBlock(block *btcutil.Block) error { blockHeader := block.MsgBlock().Header expectedDifficulty, err := b.calcNextRequiredDifficulty(prevNode, block) if err != nil { + log.Errorf("calcNextRequiredDifficulty: %v", err) return err } blockDifficulty := blockHeader.Bits @@ -47,6 +49,7 @@ func (b *BlockChain) maybeAcceptBlock(block *btcutil.Block) error { // the last several blocks (medianTimeBlocks). medianTime, err := b.calcPastMedianTime(prevNode) if err != nil { + log.Errorf("calcPastMedianTime: %v", err) return err } if !blockHeader.Timestamp.After(medianTime) { @@ -147,6 +150,7 @@ func (b *BlockChain) maybeAcceptBlock(block *btcutil.Block) error { // also handles validation of the transaction scripts. err = b.connectBestChain(newNode, block) if err != nil { + log.Errorf("connectBestChain: %v", err) return err } diff --git a/chain.go b/chain.go index 4113c914..b9a6efe3 100644 --- a/chain.go +++ b/chain.go @@ -413,6 +413,7 @@ func (b *BlockChain) calcPastMedianTime(startNode *blockNode) (time.Time, error) var err error iterNode, err = b.getPrevNodeFromNode(iterNode) if err != nil { + log.Errorf("getPrevNodeFromNode: %v", err) return time.Time{}, err } }