use common.Hash as pool key, no string conversion needed
This commit is contained in:
		@@ -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)
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user