From 2a5b0b1796420558c7417c2e0c04b8bbf5e4e21b Mon Sep 17 00:00:00 2001 From: Mark Waddle Date: Wed, 30 Oct 2024 23:17:44 +0000 Subject: [PATCH] Adds index on message_type --- ..._231536_039bec8edc33_index_message_type.py | 25 +++++++++++++++++++ .../semantic_workbench_service/db.py | 2 +- 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 workbench-service/migrations/versions/2024_10_30_231536_039bec8edc33_index_message_type.py diff --git a/workbench-service/migrations/versions/2024_10_30_231536_039bec8edc33_index_message_type.py b/workbench-service/migrations/versions/2024_10_30_231536_039bec8edc33_index_message_type.py new file mode 100644 index 00000000..8a5685ac --- /dev/null +++ b/workbench-service/migrations/versions/2024_10_30_231536_039bec8edc33_index_message_type.py @@ -0,0 +1,25 @@ +"""index message_type + +Revision ID: 039bec8edc33 +Revises: b29524775484 +Create Date: 2024-10-30 23:15:36.240812 + +""" + +from typing import Sequence, Union + +from alembic import op + +# revision identifiers, used by Alembic. +revision: str = "039bec8edc33" +down_revision: Union[str, None] = "b29524775484" +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + op.create_index(op.f("ix_conversationmessage_message_type"), "conversationmessage", ["message_type"], unique=False) + + +def downgrade() -> None: + op.drop_index(op.f("ix_conversationmessage_message_type"), table_name="conversationmessage") diff --git a/workbench-service/semantic_workbench_service/db.py b/workbench-service/semantic_workbench_service/db.py index bba3d89b..85b911a6 100644 --- a/workbench-service/semantic_workbench_service/db.py +++ b/workbench-service/semantic_workbench_service/db.py @@ -294,7 +294,7 @@ class ConversationMessage(SQLModel, table=True): created_datetime: datetime.datetime = date_time_default_to_now() sender_participant_id: str sender_participant_role: str - message_type: str + message_type: str = Field(index=True) content: str content_type: str meta_data: dict[str, Any] = Field(sa_column=sqlalchemy.Column("metadata", sqlalchemy.JSON), default={})