Skip to content

Stream image backup creation to reduce peak memory #5

Description

@catherineluse

Background

The current encrypted backup can include image blobs, but building a large backup may hold the SQLite snapshot, encoded images, serialized payload, and encrypted output in memory at the same time.

Scope

  • Measure peak memory for representative large image libraries.
  • Design a streaming or chunked backup assembly/encryption path.
  • Avoid duplicating full image payloads in memory where browser and platform APIs allow it.
  • Preserve compatibility with existing backup restore formats or add an explicitly versioned migration.
  • Surface cancellation and actionable out-of-memory failures.

Acceptance criteria

  • A documented benchmark demonstrates lower peak memory.
  • Existing backups remain restorable.
  • New backups round-trip database and image content correctly.
  • Automated tests cover chunk boundaries, failures, and cancellation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions