From 61aada1a486b2ddbd87ada7715cd60546c813b04 Mon Sep 17 00:00:00 2001 From: Brandon Lam Date: Tue, 17 Feb 2026 22:14:19 -0800 Subject: [PATCH 1/2] Fix on redundant pull request constraints Signed-off-by: Brandon Lam --- collectoss/application/db/models/data.py | 1 - 1 file changed, 1 deletion(-) diff --git a/collectoss/application/db/models/data.py b/collectoss/application/db/models/data.py index 2fa40b71a..aa4d30482 100644 --- a/collectoss/application/db/models/data.py +++ b/collectoss/application/db/models/data.py @@ -1742,7 +1742,6 @@ class PullRequest(Base): __tablename__ = "pull_requests" __table_args__ = ( UniqueConstraint("repo_id", "pr_src_id", name="unique-pr"), - UniqueConstraint("repo_id", "pr_src_id", name="unique-prx"), UniqueConstraint("pr_url", name="pull-request-insert-unique"), Index("id_node", text("pr_src_id DESC"), text("pr_src_node_id DESC NULLS LAST")), Index( From a8605eb41eeb2a76400c913f26093d2d2eaa3339 Mon Sep 17 00:00:00 2001 From: Adrian Edwards Date: Sat, 27 Jun 2026 15:42:58 -0400 Subject: [PATCH 2/2] add migration for constraint change Signed-off-by: Adrian Edwards --- .../44_remove_redundant_pr_constraint.py | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 collectoss/application/schema/alembic/versions/44_remove_redundant_pr_constraint.py diff --git a/collectoss/application/schema/alembic/versions/44_remove_redundant_pr_constraint.py b/collectoss/application/schema/alembic/versions/44_remove_redundant_pr_constraint.py new file mode 100644 index 000000000..770a1701b --- /dev/null +++ b/collectoss/application/schema/alembic/versions/44_remove_redundant_pr_constraint.py @@ -0,0 +1,29 @@ +"""remove redundant pr constraint + +Revision ID: 44 +Revises: 43 +Create Date: 2026-06-27 15:41:43.276187 + +""" +from alembic import op +import sqlalchemy as sa +from alembic_utils.pg_materialized_view import PGMaterializedView +from sqlalchemy import text as sql_text + +# revision identifiers, used by Alembic. +revision = '44' +down_revision = '43' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_constraint(op.f('unique-prx'), 'pull_requests', schema='data', type_='unique') + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_unique_constraint(op.f('unique-prx'), 'pull_requests', ['repo_id', 'pr_src_id'], schema='data') + # ### end Alembic commands ###