summaryrefslogtreecommitdiff
path: root/alembic
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2023-05-12 21:15:55 +0000
committerGerrit Code Review <gerrit@bbpush.zzzcomputing.com>2023-05-12 21:15:55 +0000
commit32a82f7e4d18c0c1459a30cd91e2265971de10f8 (patch)
tree2a9c7ffdcc6f2fa5a5c51a292c9a361541b557cf /alembic
parent86d1178e7e96dfd790b5db3cab28b06904c4e22e (diff)
parent8ba4a4435871fe948f8292e7bb5bbc452e7d51ca (diff)
downloadalembic-32a82f7e4d18c0c1459a30cd91e2265971de10f8.tar.gz
Merge "dont compare unique constraint and index sigs to each other" into main
Diffstat (limited to 'alembic')
-rw-r--r--alembic/autogenerate/compare.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/alembic/autogenerate/compare.py b/alembic/autogenerate/compare.py
index b489328..5727891 100644
--- a/alembic/autogenerate/compare.py
+++ b/alembic/autogenerate/compare.py
@@ -452,7 +452,9 @@ class _uq_constraint_sig(_constraint_sig):
def __init__(self, const: UniqueConstraint) -> None:
self.const = const
self.name = const.name
- self.sig = tuple(sorted([col.name for col in const.columns]))
+ self.sig = ("UNIQUE_CONSTRAINT",) + tuple(
+ sorted([col.name for col in const.columns])
+ )
@property
def column_names(self) -> List[str]:
@@ -465,7 +467,7 @@ class _ix_constraint_sig(_constraint_sig):
def __init__(self, const: Index, impl: DefaultImpl) -> None:
self.const = const
self.name = const.name
- self.sig = impl.create_index_sig(const)
+ self.sig = ("INDEX",) + impl.create_index_sig(const)
self.is_unique = bool(const.unique)
def md_name_to_sql_name(self, context: AutogenContext) -> Optional[str]:
@@ -807,11 +809,11 @@ def _compare_indexes_and_uniques(
if not conn_obj.is_index and conn_obj.sig in unnamed_metadata_uniques:
continue
elif removed_name in doubled_constraints:
+ conn_uq, conn_idx = doubled_constraints[removed_name]
if (
- conn_obj.sig not in metadata_indexes_by_sig
- and conn_obj.sig not in metadata_uniques_by_sig
+ conn_idx.sig not in metadata_indexes_by_sig
+ and conn_uq.sig not in metadata_uniques_by_sig
):
- conn_uq, conn_idx = doubled_constraints[removed_name]
obj_removed(conn_uq)
obj_removed(conn_idx)
else: