Skip to content

Commit 90d5abd

Browse files
feat(fabric): Refactor _drop_catalog
1 parent a869df3 commit 90d5abd

File tree

1 file changed

+1
-42
lines changed

1 file changed

+1
-42
lines changed

sqlmesh/core/engine_adapter/fabric.py

Lines changed: 1 addition & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@ def _drop_catalog(self, catalog_name: exp.Identifier) -> None:
272272
logger.info(f"Deleting Fabric warehouse: {warehouse_name}")
273273

274274
try:
275-
# First, get the warehouse ID by listing warehouses
275+
# Get the warehouse ID by listing warehouses
276276
warehouses = self._make_fabric_api_request("GET", "warehouses")
277277
warehouse_id = None
278278

@@ -289,47 +289,6 @@ def _drop_catalog(self, catalog_name: exp.Identifier) -> None:
289289
self._make_fabric_api_request("DELETE", f"warehouses/{warehouse_id}")
290290
logger.info(f"Successfully deleted Fabric warehouse: {warehouse_name}")
291291

292-
# Wait for warehouse to be fully deleted
293-
max_retries = 15 # Wait up to 2.5 minutes
294-
retry_delay = 10 # 10 seconds between retries
295-
296-
for attempt in range(max_retries):
297-
try:
298-
warehouses = self._make_fabric_api_request("GET", "warehouses")
299-
still_exists = False
300-
301-
for warehouse in warehouses.get("value", []):
302-
if warehouse.get("displayName") == warehouse_name:
303-
state = warehouse.get("state", "Unknown")
304-
logger.info(f"Warehouse {warehouse_name} deletion state: {state}")
305-
still_exists = True
306-
break
307-
308-
if not still_exists:
309-
logger.info(f"Warehouse {warehouse_name} successfully deleted")
310-
return
311-
312-
if attempt < max_retries - 1:
313-
logger.info(
314-
f"Waiting for warehouse {warehouse_name} deletion to complete (attempt {attempt + 1}/{max_retries})"
315-
)
316-
time.sleep(retry_delay)
317-
else:
318-
logger.warning(
319-
f"Warehouse {warehouse_name} may still be in deletion process after {max_retries} attempts"
320-
)
321-
322-
except SQLMeshError as e:
323-
if attempt < max_retries - 1:
324-
logger.warning(
325-
f"Failed to check warehouse deletion status (attempt {attempt + 1}/{max_retries}): {e}"
326-
)
327-
time.sleep(retry_delay)
328-
else:
329-
logger.warning(f"Failed to verify warehouse deletion: {e}")
330-
# Don't raise here as deletion might have succeeded
331-
return
332-
333292
except SQLMeshError as e:
334293
error_msg = str(e).lower()
335294
if "not found" in error_msg or "does not exist" in error_msg:

0 commit comments

Comments
 (0)