You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Would you see any inconvenience in performing a breadth-first processing rather than stacking all the entries?
if e.IsDir() {
c.stats.EnqueuedDirCount.Add(1)
// enqueue directories first, so that we quickly determine the total number and size of items.
c.q.EnqueueBack(ctx, func() error {
return c.copyEntry(ctx, e, path.Join(targetPath, e.Name()), currentdepth, maxdepth, onItemCompletion)
})
} else {
if isSymlink(e) {
c.stats.EnqueuedSymlinkCount.Add(1)
} else {
c.stats.EnqueuedFileCount.Add(1)
}
c.stats.EnqueuedTotalFileSize.Add(e.Size())
c.q.EnqueueFront(ctx, func() error {
return c.copyEntry(ctx, e, path.Join(targetPath, e.Name()), currentdepth, maxdepth, onItemCompletion)
})
By inverting EnqueueBack and EnqueueFront ?
In my tests, doing that, I use "only" 1.5GB- 2GB of memory instead of 10GB.
Hello,
When using
kopia restore
we had up to about 20 GB of used memory, which prevented us to restore.Here is a capture of the heap allocation while restoring (from a subsequent restoration which is taking a bit less memory).
About the process of restoration: We are migrating the last snapshot on the disk, and then we restore that snapshot.
Why so much memory is used while restoring ? What can we do about it ?
The text was updated successfully, but these errors were encountered: