@@ -168,18 +168,22 @@ def delete_expired_environments(self) -> t.List[Environment]:
168168 Returns:
169169 A list of deleted environments.
170170 """
171- environments , filter_expr = self .get_expired_environments ()
172- self .delete_environments (environments = environments , filter_expr = filter_expr )
173- return environments
174171
175- def delete_environments (self , environments : t .List [Environment ], filter_expr : exp .LTE ) -> None :
176- """Deletes environments and corresponding environment statements.
172+ now_ts = now_timestamp ()
173+ filter_expr = exp .LTE (
174+ this = exp .column ("expiration_ts" ),
175+ expression = exp .Literal .number (now_ts ),
176+ )
177177
178- Returns:
179- The list of deleted environments.
180- """
181- if not environments :
182- return
178+ rows = fetchall (
179+ self .engine_adapter ,
180+ self ._environments_query (
181+ where = filter_expr ,
182+ lock_for_update = True ,
183+ ),
184+ )
185+
186+ environments = [self ._environment_from_row (r ) for r in rows ]
183187
184188 # Delete the expired environments
185189 self .engine_adapter .delete_from (
@@ -197,32 +201,7 @@ def delete_environments(self, environments: t.List[Environment], filter_expr: ex
197201 where = exp .or_ (* expired_environments ),
198202 )
199203
200- def get_expired_environments (self ) -> t .Tuple [t .List [Environment ], exp .LTE ]:
201- """Fetches expired environments along with their filter expression and snapshot gateways.
202-
203- Returns:
204- A tuple containing:
205- - A list of expired environments.
206- - The filter expression used to identify expired environments.
207- """
208-
209- now_ts = now_timestamp ()
210- filter_expr = exp .LTE (
211- this = exp .column ("expiration_ts" ),
212- expression = exp .Literal .number (now_ts ),
213- )
214-
215- rows = fetchall (
216- self .engine_adapter ,
217- self ._environments_query (
218- where = filter_expr ,
219- lock_for_update = True ,
220- ),
221- )
222-
223- environments = [self ._environment_from_row (r ) for r in rows ]
224-
225- return environments , filter_expr
204+ return environments
226205
227206 def get_environments (self ) -> t .List [Environment ]:
228207 """Fetches all environments.
0 commit comments