From 494b009ef9db8092adf7172e2e9363e857618e31 Mon Sep 17 00:00:00 2001 From: Shuchang Zheng Date: Sun, 31 Aug 2025 14:10:05 +0800 Subject: [PATCH] add db index idx_workflow_scripts_wpid_cache_key_value (#3331) --- ...a454_update_workflow_scripts_wpid_index.py | 38 +++++++++++++++++++ skyvern/forge/sdk/db/models.py | 2 +- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 alembic/versions/2025_08_31_0606-ee2f523ea454_update_workflow_scripts_wpid_index.py diff --git a/alembic/versions/2025_08_31_0606-ee2f523ea454_update_workflow_scripts_wpid_index.py b/alembic/versions/2025_08_31_0606-ee2f523ea454_update_workflow_scripts_wpid_index.py new file mode 100644 index 00000000..897bed53 --- /dev/null +++ b/alembic/versions/2025_08_31_0606-ee2f523ea454_update_workflow_scripts_wpid_index.py @@ -0,0 +1,38 @@ +"""update workflow_scripts wpid index + +Revision ID: ee2f523ea454 +Revises: f54bab75b1c4 +Create Date: 2025-08-31 06:06:13.611883+00:00 + +""" + +from typing import Sequence, Union + +from alembic import op + +# revision identifiers, used by Alembic. +revision: str = "ee2f523ea454" +down_revision: Union[str, None] = "f54bab75b1c4" +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + # ### commands auto generated by Alembic - please adjust! ### + op.drop_index(op.f("idx_workflow_scripts_workflow_permanent_id"), table_name="workflow_scripts") + op.create_index( + "idx_workflow_scripts_wpid_cache_key_value", + "workflow_scripts", + ["workflow_permanent_id", "cache_key_value"], + unique=False, + ) + # ### end Alembic commands ### + + +def downgrade() -> None: + # ### commands auto generated by Alembic - please adjust! ### + op.drop_index("idx_workflow_scripts_wpid_cache_key_value", table_name="workflow_scripts") + op.create_index( + op.f("idx_workflow_scripts_workflow_permanent_id"), "workflow_scripts", ["workflow_permanent_id"], unique=False + ) + # ### end Alembic commands ### diff --git a/skyvern/forge/sdk/db/models.py b/skyvern/forge/sdk/db/models.py index a7e273fd..668d854e 100644 --- a/skyvern/forge/sdk/db/models.py +++ b/skyvern/forge/sdk/db/models.py @@ -863,7 +863,7 @@ class WorkflowScriptModel(Base): __tablename__ = "workflow_scripts" __table_args__ = ( Index("idx_workflow_scripts_org_created", "organization_id", "created_at"), - Index("idx_workflow_scripts_workflow_permanent_id", "workflow_permanent_id"), + Index("idx_workflow_scripts_wpid_cache_key_value", "workflow_permanent_id", "cache_key_value"), ) workflow_script_id = Column(String, primary_key=True, default=generate_workflow_script_id)