chain/chaindb.go
ChainDB
has 40 methods (exceeds 20 allowed). Consider refactoring. Open
Open
type ChainDB struct {
cc consensus.ChainConsensus
latest atomic.Value //types.BlockNo
bestBlock atomic.Value // *types.Block
File chaindb.go
has 523 lines of code (exceeds 500 allowed). Consider refactoring. Open
Open
/**
* @file
* @copyright defined in aergo/LICENSE.txt
*/
Method ChainDB.dropBlock
has 5 return statements (exceeds 4 allowed). Open
Open
func (cdb *ChainDB) dropBlock(dropNo types.BlockNo) error {
logger.Info().Uint64("no", dropNo).Msg("drop block")
dbTx := cdb.NewTx()
defer dbTx.Discard()
Method ChainDB.checkBlockDropped
has 5 return statements (exceeds 4 allowed). Open
Open
func (cdb *ChainDB) checkBlockDropped(dropBlock *types.Block) error {
no := dropBlock.GetHeader().GetBlockNo()
hash := dropBlock.GetHash()
txLen := len(dropBlock.GetBody().GetTxs())