From 9697e06ec9a9ade2ada785997559984bb51571e6 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Tue, 10 Oct 2023 15:00:13 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(change=5Fcolumns=5Fto=5Fbe?= =?UTF-8?q?=5Fnullable.py):=20add=20exception=20handling=20and=20rollback?= =?UTF-8?q?=20in=20case=20of=20SQLAlchemyError=20to=20prevent=20data=20los?= =?UTF-8?q?s=20during=20migration?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../versions/eb5866d51fd2_change_columns_to_be_nullable.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/backend/langflow/alembic/versions/eb5866d51fd2_change_columns_to_be_nullable.py b/src/backend/langflow/alembic/versions/eb5866d51fd2_change_columns_to_be_nullable.py index 10d503e60..cb126c926 100644 --- a/src/backend/langflow/alembic/versions/eb5866d51fd2_change_columns_to_be_nullable.py +++ b/src/backend/langflow/alembic/versions/eb5866d51fd2_change_columns_to_be_nullable.py @@ -9,6 +9,7 @@ from typing import Sequence, Union from alembic import op import sqlalchemy as sa +from sqlalchemy import exc import sqlmodel # noqa: F401 # revision identifiers, used by Alembic. @@ -20,16 +21,21 @@ depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: # ### commands auto generated by Alembic - please adjust! ### + connection = op.get_bind() try: op.drop_table("flowstyle") with op.batch_alter_table("component", schema=None) as batch_op: batch_op.drop_index("ix_component_frontend_node_id") batch_op.drop_index("ix_component_name") + except exc.SQLAlchemyError: + connection.execute("ROLLBACK") except Exception: pass try: op.drop_table("component") + except exc.SQLAlchemyError: + connection.execute("ROLLBACK") except Exception: pass # ### end Alembic commands ###