Skip to content

check/copy/diff/stats: reduce memory usage#5610

Merged
MichaelEischer merged 8 commits into
restic:masterfrom
MichaelEischer:associated-blob-set-everywhere
Nov 26, 2025
Merged

check/copy/diff/stats: reduce memory usage#5610
MichaelEischer merged 8 commits into
restic:masterfrom
MichaelEischer:associated-blob-set-everywhere

Conversation

@MichaelEischer

@MichaelEischer MichaelEischer commented Nov 19, 2025

Copy link
Copy Markdown
Member

What does this PR change? What problem does it solve?

The index.AssociatedSet is a very memory efficient way to track BlobHandles. Up to now its usage was limited to the prune command. However, after #5560 it's now easily possible to use it in place of a restic.BlobSet. Replace all BlobSet usages where it is expected that a large number of BlobHandles are stored there.

Test generation was AI assisted.

Was the change previously discussed in an issue or on the forum?

No. I had the idea while reviewing #5469 .

Checklist

  • I have added tests for all code changes.
  • [ ] I have added documentation for relevant changes (in the manual).
  • There's a new file in changelog/unreleased/ that describes the changes for our users (see template).
  • I'm done! This pull request is ready for review.

@MichaelEischer MichaelEischer force-pushed the associated-blob-set-everywhere branch from 9b4e517 to 134893b Compare November 26, 2025 20:00

@MichaelEischer MichaelEischer left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@MichaelEischer MichaelEischer merged commit 4d2da63 into restic:master Nov 26, 2025
12 checks passed
@MichaelEischer MichaelEischer deleted the associated-blob-set-everywhere branch November 26, 2025 20:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant