Skip to content

Commit c398b50

Browse files
committed
known files property
1 parent 4a20af2 commit c398b50

File tree

1 file changed

+4
-14
lines changed

1 file changed

+4
-14
lines changed

cacholote/clean.py

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,7 @@ def __init__(self, depth: int, use_database: bool) -> None:
130130

131131
self.logger.info("getting disk usage")
132132
self.file_sizes: dict[str, int] = collections.defaultdict(int)
133-
du = (
134-
self.get_known_files()
135-
if use_database
136-
else self.fs.du(self.dirname, total=False)
137-
)
133+
du = self.known_files if use_database else self.fs.du(self.dirname, total=False)
138134
for path, size in du.items():
139135
# Group dirs
140136
urlpath = self.fs.unstrip_protocol(path)
@@ -155,7 +151,8 @@ def log_disk_usage(self) -> None:
155151
def stop_cleaning(self, maxsize: int) -> bool:
156152
return self.disk_usage <= maxsize
157153

158-
def get_known_files(self) -> dict[str, int]:
154+
@property
155+
def known_files(self) -> dict[str, int]:
159156
known_files: dict[str, int] = {}
160157
with config.get().instantiated_sessionmaker() as session:
161158
for cache_entry in session.scalars(sa.select(database.CacheEntry)):
@@ -181,14 +178,7 @@ def get_unknown_files(self, lock_validity_period: float | None) -> set[str]:
181178
locked_files.add(urlpath)
182179
locked_files.add(urlpath.rsplit(".lock", 1)[0])
183180

184-
if unknown_files := (set(self.file_sizes) - locked_files):
185-
with config.get().instantiated_sessionmaker() as session:
186-
for cache_entry in session.scalars(sa.select(database.CacheEntry)):
187-
for known_file in _get_files_from_cache_entry(cache_entry):
188-
unknown_files.discard(known_file)
189-
if not unknown_files:
190-
break
191-
return unknown_files
181+
return set(self.file_sizes) - locked_files - set(self.known_files)
192182

193183
def delete_unknown_files(
194184
self, lock_validity_period: float | None, recursive: bool

0 commit comments

Comments
 (0)