summaryrefslogtreecommitdiff
path: root/lib/btrfsutil/rebuilt_tree.go
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2023-03-04 09:42:44 -0700
committerLuke Shumaker <lukeshu@lukeshu.com>2023-04-13 13:22:35 -0600
commit2c157587cd6b7cb03d169327f397cd4c01b872f9 (patch)
tree7ebe3d4846073b67d85691619b597903fdc1f104 /lib/btrfsutil/rebuilt_tree.go
parent163e8a157ab812a8eafa3a1d2d2b8c0e45431559 (diff)
btrfsutil: Graph: Track item sizes
Diffstat (limited to 'lib/btrfsutil/rebuilt_tree.go')
-rw-r--r--lib/btrfsutil/rebuilt_tree.go12
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/btrfsutil/rebuilt_tree.go b/lib/btrfsutil/rebuilt_tree.go
index 177b859..12d5978 100644
--- a/lib/btrfsutil/rebuilt_tree.go
+++ b/lib/btrfsutil/rebuilt_tree.go
@@ -329,17 +329,17 @@ func (tree *RebuiltTree) items(ctx context.Context, inc bool) containers.SortedM
for i, leaf := range leafs {
stats.Leafs.N = i
progressWriter.Set(stats)
- for j, itemKey := range tree.forrest.graph.Nodes[leaf].Items {
+ for j, itemKeyAndSize := range tree.forrest.graph.Nodes[leaf].Items {
newPtr := ItemPtr{
Node: leaf,
Slot: j,
}
- if oldPtr, exists := index.Load(itemKey); !exists {
- index.Store(itemKey, newPtr)
+ if oldPtr, exists := index.Load(itemKeyAndSize.Key); !exists {
+ index.Store(itemKeyAndSize.Key, newPtr)
stats.NumItems++
} else {
if tree.RebuiltShouldReplace(oldPtr.Node, newPtr.Node) {
- index.Store(itemKey, newPtr)
+ index.Store(itemKeyAndSize.Key, newPtr)
}
stats.NumDups++
}
@@ -425,8 +425,8 @@ func (tree *RebuiltTree) RebuiltAddRoot(ctx context.Context, rootNode btrfsvol.L
stats.AddedLeafs++
progressWriter.Set(stats)
- for _, itemKey := range tree.forrest.graph.Nodes[leaf].Items {
- extCB.AddedItem(ctx, tree.ID, itemKey)
+ for _, itemKeyAndSize := range tree.forrest.graph.Nodes[leaf].Items {
+ extCB.AddedItem(ctx, tree.ID, itemKeyAndSize.Key)
stats.AddedItems++
progressWriter.Set(stats)
}