summaryrefslogtreecommitdiff
path: root/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2023-01-03 21:03:25 -0700
committerLuke Shumaker <lukeshu@lukeshu.com>2023-01-05 19:48:18 -0700
commitc7d387f5ddd39e2d359c2c0c2ef52536ab650160 (patch)
tree98bc4ddf25ed790ad9cbf284550a3d74a4f2ea29 /lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go
parent94e662ff74a23bf579eb2bcf6f2b152b13436a01 (diff)
rebuildnodes/btrees: Don't include .Items() in .PotentialItems()
Save some memory.
Diffstat (limited to 'lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go')
-rw-r--r--lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go b/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go
index a25825a..65f76b2 100644
--- a/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go
+++ b/lib/btrfsprogs/btrfsinspect/rebuildnodes/btrees/tree.go
@@ -40,8 +40,8 @@ type RebuiltTree struct {
// evicted.
//
// 1. tree.leafToRoots() = tree.forrest.leafs.Load(tree.ID)
- // 2. tree.PotentialItems() = tree.forrest.allItems.Load(tree.ID)
- // 3. tree.Items() = tree.forrest.incItems.Load(tree.ID)
+ // 2. tree.Items() = tree.forrest.incItems.Load(tree.ID)
+ // 3. tree.PotentialItems() = tree.forrest.excItems.Load(tree.ID)
}
// LRU member 1: .leafToRoots() ////////////////////////////////////////////////////////////////////////////////////////
@@ -149,9 +149,9 @@ func (tree *RebuiltTree) Items(ctx context.Context) *containers.SortedMap[btrfsp
// RebuiltTree's internal map!
func (tree *RebuiltTree) PotentialItems(ctx context.Context) *containers.SortedMap[btrfsprim.Key, keyio.ItemPtr] {
ctx = dlog.WithField(ctx, "btrfsinspect.rebuild-nodes.rebuild.index-all-items", fmt.Sprintf("tree=%v", tree.ID))
- return tree.items(ctx, tree.forrest.allItems,
- func(_ containers.Set[btrfsvol.LogicalAddr]) bool {
- return true
+ return tree.items(ctx, tree.forrest.excItems,
+ func(roots containers.Set[btrfsvol.LogicalAddr]) bool {
+ return !tree.Roots.HasAny(roots)
})
}