code: func dbStoreBlockNode(dbTx database.Tx, node *blockNode) error {
  	// Serialize block data to be stored.
  	w := bytes.NewBuffer(make([]byte, 0, blockHdrSize+1))
  	header := node.Header()
  	err := header.Serialize(w)
  	if err != nil {
  		return err
  	}
  	err = w.WriteByte(byte(node.status))
  	if err != nil {
  		return err
  	}
  	value := w.Bytes()
  
  	// Write block header data to block index bucket.
  	blockIndexBucket := dbTx.Metadata().Bucket(blockIndexBucketName)
  	key := blockIndexKey(&node.hash, uint32(node.height))
  	return blockIndexBucket.Put(key, value)
  }
docs: // dbStoreBlockNode stores the block header and validation status to the block
  // index bucket. This overwrites the current entry if there exists one.