From a616748ec537d53b04b0be0689c303b7e51d8734 Mon Sep 17 00:00:00 2001 From: jsvisa Date: Tue, 27 May 2025 14:25:03 +0800 Subject: [PATCH 1/2] triedb/pathdb: slots -> storages Signed-off-by: jsvisa --- triedb/pathdb/metrics.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/triedb/pathdb/metrics.go b/triedb/pathdb/metrics.go index 502c34fc62ec..4ee1fc90766c 100644 --- a/triedb/pathdb/metrics.go +++ b/triedb/pathdb/metrics.go @@ -59,7 +59,7 @@ var ( commitTimeTimer = metrics.NewRegisteredResettingTimer("pathdb/commit/time", nil) commitNodesMeter = metrics.NewRegisteredMeter("pathdb/commit/nodes", nil) commitAccountsMeter = metrics.NewRegisteredMeter("pathdb/commit/accounts", nil) - commitStoragesMeter = metrics.NewRegisteredMeter("pathdb/commit/slots", nil) + commitStoragesMeter = metrics.NewRegisteredMeter("pathdb/commit/storages", nil) commitBytesMeter = metrics.NewRegisteredMeter("pathdb/commit/bytes", nil) gcTrieNodeMeter = metrics.NewRegisteredMeter("pathdb/gc/node/count", nil) From 3ebf3d048fd2b7667f1684f1666a61cae1551c91 Mon Sep 17 00:00:00 2001 From: jsvisa Date: Tue, 27 May 2025 14:32:28 +0800 Subject: [PATCH 2/2] triedb/pathdb: sort the locations by read order Signed-off-by: jsvisa --- triedb/pathdb/difflayer.go | 2 +- triedb/pathdb/reader.go | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/triedb/pathdb/difflayer.go b/triedb/pathdb/difflayer.go index 2e1d83c74a94..ab204cef3dca 100644 --- a/triedb/pathdb/difflayer.go +++ b/triedb/pathdb/difflayer.go @@ -91,7 +91,7 @@ func (dl *diffLayer) node(owner common.Hash, path []byte, depth int) ([]byte, co dirtyNodeHitMeter.Mark(1) dirtyNodeHitDepthHist.Update(int64(depth)) dirtyNodeReadMeter.Mark(int64(len(n.Blob))) - return n.Blob, n.Hash, &nodeLoc{loc: locDiffLayer, depth: depth}, nil + return n.Blob, n.Hash, &nodeLoc{loc: locDiffCache, depth: depth}, nil } // Trie node unknown to this layer, resolve from parent return dl.parent.node(owner, path, depth+1) diff --git a/triedb/pathdb/reader.go b/triedb/pathdb/reader.go index 30f75d10582e..b35303109ba1 100644 --- a/triedb/pathdb/reader.go +++ b/triedb/pathdb/reader.go @@ -29,10 +29,10 @@ import ( // The types of locations where the node is found. const ( - locDirtyCache = "dirty" // dirty cache - locCleanCache = "clean" // clean cache - locDiskLayer = "disk" // persistent state - locDiffLayer = "diff" // diff layers + locDiffCache = "diff" // in-memory cache for nodes from the diff layer + locDirtyCache = "dirty" // not yet persisted write buffer for modified nodes + locCleanCache = "clean" // fastcache for clean nodes from the disk layer + locDiskLayer = "disk" // on-disk persistent state ) // nodeLoc is a helpful structure that contains the location where the node @@ -67,12 +67,12 @@ func (r *reader) Node(owner common.Hash, path []byte, hash common.Hash) ([]byte, // Location is always available even if the node // is not found. switch loc.loc { - case locCleanCache: - nodeCleanFalseMeter.Mark(1) + case locDiffCache: + nodeDiffFalseMeter.Mark(1) case locDirtyCache: nodeDirtyFalseMeter.Mark(1) - case locDiffLayer: - nodeDiffFalseMeter.Mark(1) + case locCleanCache: + nodeCleanFalseMeter.Mark(1) case locDiskLayer: nodeDiskFalseMeter.Mark(1) }