"""fts expression gin on messages and media Revision ID: b7e3d9f1a4c6 Revises: a1d4f7c2e9b8 Create Date: 2026-05-29 22:30:00.000000 """ from collections.abc import Sequence from alembic import op revision: str = "b7e3d9f1a4c6" down_revision: str | None = "a1d4f7c2e9b8" branch_labels: str | Sequence[str] | None = None depends_on: str | Sequence[str] | None = None def upgrade() -> None: op.execute( "CREATE INDEX ix_messages_tsv ON messages USING gin " "(to_tsvector('russian', coalesce(text, '')))" ) op.execute( "CREATE INDEX ix_media_tsv ON media USING gin " "(to_tsvector('russian', coalesce(extracted_text, '')))" ) def downgrade() -> None: op.execute("DROP INDEX IF EXISTS ix_media_tsv") op.execute("DROP INDEX IF EXISTS ix_messages_tsv")