mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-27 15:16:43 +00:00
added mutex to trie.tracer (#1007)
This commit is contained in:
parent
fbb9020bec
commit
33c0b5dd69
1 changed files with 5 additions and 1 deletions
|
|
@ -21,6 +21,7 @@ import (
|
|||
"bytes"
|
||||
"errors"
|
||||
"fmt"
|
||||
"sync"
|
||||
|
||||
"github.com/ethereum/go-ethereum/common"
|
||||
"github.com/ethereum/go-ethereum/core/types"
|
||||
|
|
@ -49,6 +50,7 @@ type Trie struct {
|
|||
// tracer is the tool to track the trie changes.
|
||||
// It will be reset after each commit operation.
|
||||
tracer *tracer
|
||||
tracerMutex sync.Mutex
|
||||
}
|
||||
|
||||
// newFlag returns the cache flag value for a newly created node.
|
||||
|
|
@ -605,7 +607,9 @@ func (t *Trie) resolveAndTrack(n hashNode, prefix []byte) (node, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
t.tracerMutex.Lock()
|
||||
t.tracer.onRead(prefix, blob)
|
||||
t.tracerMutex.Unlock()
|
||||
|
||||
return mustDecodeNode(n, blob), nil
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue