This is an automated email from the ASF dual-hosted git repository.
michaelsmolina pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git
The following commit(s) were added to refs/heads/master by this push:
new 402c29c2bc fix: catalog migration w/o connection (#30773)
402c29c2bc is described below
commit 402c29c2bc1857812cc4330a604d2f0774200f14
Author: Beto Dealmeida <[email protected]>
AuthorDate: Fri Nov 1 07:11:01 2024 -0400
fix: catalog migration w/o connection (#30773)
---
superset/migrations/shared/catalogs.py | 24 ++++++++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/superset/migrations/shared/catalogs.py
b/superset/migrations/shared/catalogs.py
index b75214291b..3f14598eb6 100644
--- a/superset/migrations/shared/catalogs.py
+++ b/superset/migrations/shared/catalogs.py
@@ -381,7 +381,17 @@ def upgrade_catalog_perms(engines: set[str] | None = None)
-> None:
# analytical DB. If we can't connect to the analytical DB during the
migration
# we should stop it, since we need the default catalog in order to
update
# existing models.
- if default_catalog := database.get_default_catalog():
+ try:
+ default_catalog = database.get_default_catalog()
+ except GenericDBException as ex:
+ logger.warning(
+ "Error fetching default catalog for database %s: %s",
+ database.database_name,
+ ex,
+ )
+ continue
+
+ if default_catalog:
upgrade_database_catalogs(database, default_catalog, session)
session.flush()
@@ -558,7 +568,17 @@ def downgrade_catalog_perms(engines: set[str] | None =
None) -> None:
) or not db_engine_spec.supports_catalog:
continue
- if default_catalog := database.get_default_catalog():
+ try:
+ default_catalog = database.get_default_catalog()
+ except GenericDBException as ex:
+ logger.warning(
+ "Error fetching default catalog for database %s: %s",
+ database.database_name,
+ ex,
+ )
+ continue
+
+ if default_catalog:
downgrade_database_catalogs(database, default_catalog, session)
session.flush()