From a144815201444c47ec6ba3e9e3b3f6dbd5464d70 Mon Sep 17 00:00:00 2001 From: Akshay Joshi Date: Mon, 20 Mar 2023 16:18:21 +0530 Subject: [PATCH] Fixed an issue where migration on external database is not working. #5941 --- web/migrations/versions/f656e56dfdc8_.py | 28 +++++++++++++----------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/web/migrations/versions/f656e56dfdc8_.py b/web/migrations/versions/f656e56dfdc8_.py index ef5063b21..9a616127e 100644 --- a/web/migrations/versions/f656e56dfdc8_.py +++ b/web/migrations/versions/f656e56dfdc8_.py @@ -14,7 +14,7 @@ Create Date: 2023-01-02 14:52:48.109290 """ import sqlalchemy as sa -from alembic import op +from alembic import op, context # revision identifiers, used by Alembic. @@ -36,18 +36,20 @@ def migrate_connection_params(table_name): # to directly v6.16 and above. Below statements has been removed from # migration file 3ce25f562f3b_.py as a part of using the alembic code # instead of SQL queries directly. - try: - # Rename user table to user_old and again user_old to user to change - # the foreign key reference of user_old table which is not exists - op.execute("ALTER TABLE user RENAME TO user_old") - op.execute("ALTER TABLE user_old RENAME TO user") - # Rename user table to server_old and again server_old to server to - # change the foreign key reference of user_old table which is not - # exists. - op.execute("ALTER TABLE server RENAME TO server_old") - op.execute("ALTER TABLE server_old RENAME TO server") - except Exception as _: - pass + if context.get_impl().bind.dialect.name == "sqlite": + try: + # Rename user table to user_old and again user_old to user to + # change the foreign key reference of user_old table which is not + # exists + op.execute("ALTER TABLE \"user\" RENAME TO user_old") + op.execute("ALTER TABLE user_old RENAME TO \"user\"") + # Rename user table to server_old and again server_old to server to + # change the foreign key reference of user_old table which is not + # exists. + op.execute("ALTER TABLE server RENAME TO server_old") + op.execute("ALTER TABLE server_old RENAME TO server") + except Exception as _: + pass # define table representation meta = sa.MetaData(bind=op.get_bind())