aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorzelig <viktor.tron@gmail.com>2015-03-20 19:57:47 +0800
committerzelig <viktor.tron@gmail.com>2015-03-20 19:57:47 +0800
commit66b29899c474abeab6c66060c9ea5bbff85b9efb (patch)
tree09ed7fd3f1d1506afcd4e4ebd79c4fa5a1181b3d
parentd7564a9a25c06f0c9ad9440f02b09e20e0ca30bc (diff)
downloaddexon-66b29899c474abeab6c66060c9ea5bbff85b9efb.tar.gz
dexon-66b29899c474abeab6c66060c9ea5bbff85b9efb.tar.zst
dexon-66b29899c474abeab6c66060c9ea5bbff85b9efb.zip
use common.Hash as pool key, no string conversion needed
-rw-r--r--blockpool/blockpool.go12
-rw-r--r--blockpool/section.go4
2 files changed, 8 insertions, 8 deletions
diff --git a/blockpool/blockpool.go b/blockpool/blockpool.go
index 921d34949..09b9e7b0b 100644
--- a/blockpool/blockpool.go
+++ b/blockpool/blockpool.go
@@ -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()
diff --git a/blockpool/section.go b/blockpool/section.go
index 18a27377d..bcbd71cfc 100644
--- a/blockpool/section.go
+++ b/blockpool/section.go
@@ -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)
}