aboutsummaryrefslogtreecommitdiffstats
path: root/miner
diff options
context:
space:
mode:
Diffstat (limited to 'miner')
-rw-r--r--miner/miner.go5
-rw-r--r--miner/worker.go6
2 files changed, 8 insertions, 3 deletions
diff --git a/miner/miner.go b/miner/miner.go
index b95c65859..d3b1f578a 100644
--- a/miner/miner.go
+++ b/miner/miner.go
@@ -3,6 +3,7 @@ package miner
import (
"math/big"
+ "github.com/ethereum/ethash"
"github.com/ethereum/go-ethereum/core"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/pow"
@@ -44,6 +45,8 @@ func (self *Miner) Mining() bool {
func (self *Miner) Start() {
self.mining = true
+ self.pow.(*ethash.Ethash).UpdateDAG()
+
self.worker.start()
self.worker.commitNewWork()
@@ -53,6 +56,8 @@ func (self *Miner) Stop() {
self.mining = false
self.worker.stop()
+
+ //self.pow.(*ethash.Ethash).Stop()
}
func (self *Miner) HashRate() int64 {
diff --git a/miner/worker.go b/miner/worker.go
index 29992b327..21a0522e8 100644
--- a/miner/worker.go
+++ b/miner/worker.go
@@ -30,7 +30,7 @@ type environment struct {
}
func env(block *types.Block, eth core.Backend) *environment {
- state := state.New(block.Root(), eth.Db())
+ state := state.New(block.Root(), eth.StateDb())
env := &environment{
totalUsedGas: new(big.Int),
state: state,
@@ -116,7 +116,7 @@ func (self *worker) register(agent Agent) {
}
func (self *worker) update() {
- events := self.mux.Subscribe(core.ChainEvent{}, core.NewMinedBlockEvent{})
+ events := self.mux.Subscribe(core.ChainHeadEvent{}, core.NewMinedBlockEvent{})
timer := time.NewTicker(2 * time.Second)
@@ -125,7 +125,7 @@ out:
select {
case event := <-events.Chan():
switch ev := event.(type) {
- case core.ChainEvent:
+ case core.ChainHeadEvent:
if self.current.block != ev.Block {
self.commitNewWork()
}