@@ -130,11 +130,7 @@ def __init__(self, depth: int, use_database: bool) -> None:
130
130
131
131
self .logger .info ("getting disk usage" )
132
132
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 )
138
134
for path , size in du .items ():
139
135
# Group dirs
140
136
urlpath = self .fs .unstrip_protocol (path )
@@ -155,7 +151,8 @@ def log_disk_usage(self) -> None:
155
151
def stop_cleaning (self , maxsize : int ) -> bool :
156
152
return self .disk_usage <= maxsize
157
153
158
- def get_known_files (self ) -> dict [str , int ]:
154
+ @property
155
+ def known_files (self ) -> dict [str , int ]:
159
156
known_files : dict [str , int ] = {}
160
157
with config .get ().instantiated_sessionmaker () as session :
161
158
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]:
181
178
locked_files .add (urlpath )
182
179
locked_files .add (urlpath .rsplit (".lock" , 1 )[0 ])
183
180
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 )
192
182
193
183
def delete_unknown_files (
194
184
self , lock_validity_period : float | None , recursive : bool
0 commit comments