From f9eaaab929583d52e17d8b0fd3f0c0434feb4928 Mon Sep 17 00:00:00 2001 From: Houkime <> Date: Fri, 7 Apr 2023 17:24:53 +0000 Subject: [PATCH] feature(backups): enable snapshot cache usage --- selfprivacy_api/backup/__init__.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/selfprivacy_api/backup/__init__.py b/selfprivacy_api/backup/__init__.py index 13eb7de..d22c4c9 100644 --- a/selfprivacy_api/backup/__init__.py +++ b/selfprivacy_api/backup/__init__.py @@ -321,9 +321,16 @@ class Backups: @staticmethod def get_snapshots(service: Service) -> List[Snapshot]: - repo_name = service.get_id() + service_id = service.get_id() + cached_snapshots = Backups.get_cached_snapshots_service(service_id) + if cached_snapshots != []: + return cached_snapshots + # TODO: the oldest snapshots will get expired faster than the new ones. + # How to detect that the end is missing? - return Backups.provider().backuper.get_snapshots(repo_name) + upstream_snapshots = Backups.provider().backuper.get_snapshots(service_id) + Backups.sync_service_snapshots(service_id, upstream_snapshots) + return upstream_snapshots @staticmethod def restore_service_from_snapshot(service: Service, snapshot_id: str):