From d39ffe687328a96bf08bc78493dda2ebe2a5287c Mon Sep 17 00:00:00 2001 From: jimmyshi <417711026@qq.com> Date: Mon, 27 Oct 2025 17:17:24 +0800 Subject: [PATCH] filtermaps support history pruning cutoff point --- core/filtermaps/map_renderer.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/filtermaps/map_renderer.go b/core/filtermaps/map_renderer.go index e1284a3829..673677af27 100644 --- a/core/filtermaps/map_renderer.go +++ b/core/filtermaps/map_renderer.go @@ -161,13 +161,13 @@ func (f *FilterMaps) lastCanonicalSnapshotOfMap(mapIndex uint32) *renderedMap { // and starting log value pointer of the last block is also returned. func (f *FilterMaps) lastCanonicalMapBoundaryBefore(renderBefore uint32) (nextMap uint32, startBlock, startLvPtr uint64, err error) { if !f.indexedRange.initialized { - return 0, 0, 0, nil + return 0, f.historyCutoff, 0, nil } mapIndex := renderBefore for { var ok bool if mapIndex, ok = f.lastMapBoundaryBefore(mapIndex); !ok { - return 0, 0, 0, nil + return 0, f.historyCutoff, 0, nil } lastBlock, lastBlockId, err := f.getLastBlockOfMap(mapIndex) if err != nil { @@ -229,7 +229,7 @@ func (f *FilterMaps) loadHeadSnapshot() error { if err != nil { return fmt.Errorf("failed to retrieve last block of head snapshot map %d: %v", f.indexedRange.maps.Last(), err) } - var firstBlock uint64 + var firstBlock uint64 = f.historyCutoff if f.indexedRange.maps.AfterLast() > 1 { prevLastBlock, _, err := f.getLastBlockOfMap(f.indexedRange.maps.Last() - 1) if err != nil {