debug comments & pow handling

This commit is contained in:
obscuren 2015-03-06 10:22:40 +01:00
parent 580d09084d
commit 23ad2f02c0
3 changed files with 6 additions and 8 deletions

View File

@ -66,7 +66,6 @@ func CalcGasLimit(parent, block *types.Block) *big.Int {
} }
// ((1024-1) * parent.gasLimit + (gasUsed * 6 / 5)) / 1024 // ((1024-1) * parent.gasLimit + (gasUsed * 6 / 5)) / 1024
previous := new(big.Int).Mul(big.NewInt(1024-1), parent.GasLimit()) previous := new(big.Int).Mul(big.NewInt(1024-1), parent.GasLimit())
current := new(big.Rat).Mul(new(big.Rat).SetInt(parent.GasUsed()), big.NewRat(6, 5)) current := new(big.Rat).Mul(new(big.Rat).SetInt(parent.GasUsed()), big.NewRat(6, 5))
curInt := new(big.Int).Div(current.Num(), current.Denom()) curInt := new(big.Int).Div(current.Num(), current.Denom())
@ -291,7 +290,6 @@ func (self *ChainManager) GetBlockHashesFromHash(hash []byte, max uint64) (chain
if block == nil { if block == nil {
return return
} }
// XXX Could be optimised by using a different database which only holds hashes (i.e., linked list) // XXX Could be optimised by using a different database which only holds hashes (i.e., linked list)
for i := uint64(0); i < max; i++ { for i := uint64(0); i < max; i++ {
parentHash := block.Header().ParentHash parentHash := block.Header().ParentHash
@ -396,12 +394,9 @@ func (bc *ChainManager) Stop() {
} }
func (self *ChainManager) InsertChain(chain types.Blocks) error { func (self *ChainManager) InsertChain(chain types.Blocks) error {
println("insert chain start")
self.tsmu.Lock() self.tsmu.Lock()
defer self.tsmu.Unlock() defer self.tsmu.Unlock()
defer println("insert chain end")
for _, block := range chain { for _, block := range chain {
// Call in to the block processor and check for errors. It's likely that if one block fails // Call in to the block processor and check for errors. It's likely that if one block fails
// all others will fail too (unless a known block is returned). // all others will fail too (unless a known block is returned).

View File

@ -253,10 +253,9 @@ func (self *ethProtocol) handle() error {
case NewBlockMsg: case NewBlockMsg:
var request newBlockMsgData var request newBlockMsgData
if err := msg.Decode(&request); err != nil { if err := msg.Decode(&request); err != nil {
return self.protoError(ErrDecode, "msg %v: %v", msg, err) return self.protoError(ErrDecode, "%v: %v", msg, err)
} }
hash := request.Block.Hash() hash := request.Block.Hash()
fmt.Printf("received block: %x\n", hash)
_, chainHead, _ := self.chainManager.Status() _, chainHead, _ := self.chainManager.Status()
jsonlogger.LogJson(&logger.EthChainReceivedNewBlock{ jsonlogger.LogJson(&logger.EthChainReceivedNewBlock{

View File

@ -3,6 +3,7 @@ package miner
import ( import (
"math/big" "math/big"
"github.com/ethereum/ethash"
"github.com/ethereum/go-ethereum/core" "github.com/ethereum/go-ethereum/core"
"github.com/ethereum/go-ethereum/logger" "github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/pow" "github.com/ethereum/go-ethereum/pow"
@ -29,7 +30,6 @@ func New(coinbase []byte, eth core.Backend, pow pow.PoW, minerThreads int) *Mine
pow: pow, pow: pow,
} }
minerThreads = 1
for i := 0; i < minerThreads; i++ { for i := 0; i < minerThreads; i++ {
miner.worker.register(NewCpuMiner(i, miner.pow)) miner.worker.register(NewCpuMiner(i, miner.pow))
} }
@ -44,6 +44,8 @@ func (self *Miner) Mining() bool {
func (self *Miner) Start() { func (self *Miner) Start() {
self.mining = true self.mining = true
self.pow.(*ethash.Ethash).UpdateDAG()
self.worker.start() self.worker.start()
self.worker.commitNewWork() self.worker.commitNewWork()
@ -53,6 +55,8 @@ func (self *Miner) Stop() {
self.mining = false self.mining = false
self.worker.stop() self.worker.stop()
//self.pow.(*ethash.Ethash).Stop()
} }
func (self *Miner) HashRate() int64 { func (self *Miner) HashRate() int64 {