Commit 66b29899 authored by zelig's avatar zelig

use common.Hash as pool key, no string conversion needed

parent d7564a9a
......@@ -157,8 +157,8 @@ type BlockPool struct {
tdSub event.Subscription // subscription to core.ChainHeadEvent
td *big.Int // our own total difficulty
pool map[string]*entry // the actual blockpool
peers *peers // peers manager in peers.go
pool map[common.Hash]*entry // the actual blockpool
peers *peers // peers manager in peers.go
status *status // info about blockpool (UI interface) in status.go
......@@ -210,7 +210,7 @@ func (self *BlockPool) Start() {
self.hashSlicePool = make(chan []common.Hash, 150)
self.status = newStatus()
self.quit = make(chan bool)
self.pool = make(map[string]*entry)
self.pool = make(map[common.Hash]*entry)
self.running = true
self.peers = &peers{
......@@ -789,13 +789,13 @@ func (self *BlockPool) getChild(sec *section) *section {
func (self *BlockPool) get(hash common.Hash) *entry {
self.lock.RLock()
defer self.lock.RUnlock()
return self.pool[hash.Str()]
return self.pool[hash]
}
func (self *BlockPool) set(hash common.Hash, e *entry) {
self.lock.Lock()
defer self.lock.Unlock()
self.pool[hash.Str()] = e
self.pool[hash] = e
}
// accessor and setter for total difficulty
......@@ -817,7 +817,7 @@ func (self *BlockPool) remove(sec *section) {
defer self.lock.Unlock()
for _, node := range sec.nodes {
delete(self.pool, node.hash.Str())
delete(self.pool, node.hash)
}
if sec.initialised && sec.poolRootIndex != 0 {
self.status.lock.Lock()
......
......@@ -106,7 +106,7 @@ func (self *section) addSectionToBlockChain(p *peer) {
var nodes []*node
var n *node
var keys []string
var keys []common.Hash
var blocks []*types.Block
for self.poolRootIndex > 0 {
n = self.nodes[self.poolRootIndex-1]
......@@ -117,7 +117,7 @@ func (self *section) addSectionToBlockChain(p *peer) {
break
}
self.poolRootIndex--
keys = append(keys, n.hash.Str())
keys = append(keys, n.hash)
blocks = append(blocks, block)
nodes = append(nodes, n)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment