trie: avoid un-needed map copy (#30343)

This change avoids the an unnecessary map copy if the preimage recording is not enabled.
pull/30344/head
rjl493456442 3 months ago committed by GitHub
parent ada20c09dc
commit 020f026616
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      trie/secure_trie.go

@ -250,11 +250,11 @@ func (t *StateTrie) Witness() map[string]struct{} {
func (t *StateTrie) Commit(collectLeaf bool) (common.Hash, *trienode.NodeSet) { func (t *StateTrie) Commit(collectLeaf bool) (common.Hash, *trienode.NodeSet) {
// Write all the pre-images to the actual disk database // Write all the pre-images to the actual disk database
if len(t.getSecKeyCache()) > 0 { if len(t.getSecKeyCache()) > 0 {
if t.preimages != nil {
preimages := make(map[common.Hash][]byte, len(t.secKeyCache)) preimages := make(map[common.Hash][]byte, len(t.secKeyCache))
for hk, key := range t.secKeyCache { for hk, key := range t.secKeyCache {
preimages[common.BytesToHash([]byte(hk))] = key preimages[common.BytesToHash([]byte(hk))] = key
} }
if t.preimages != nil {
t.preimages.InsertPreimage(preimages) t.preimages.InsertPreimage(preimages)
} }
t.secKeyCache = make(map[string][]byte) t.secKeyCache = make(map[string][]byte)

Loading…
Cancel
Save