"""hot path indexes Revision ID: c1f6b3d84a92 Revises: b9e4d1a70c26 Create Date: 2026-08-06 12:00:00.000000 """ from collections.abc import Sequence from alembic import op revision: str = "c1f6b3d84a92" down_revision: str | None = "b9e4d1a70c26" branch_labels: str | Sequence[str] | None = None depends_on: str | Sequence[str] | None = None def upgrade() -> None: op.execute( "CREATE INDEX ix_messages_chat_date ON messages " "(account_id, chat_id, date DESC, message_id DESC)" ) op.execute("CREATE INDEX ix_avatars_owner ON avatars (account_id, owner_id)") op.execute("CREATE INDEX ix_media_message ON media (account_id, message_id)") op.execute( "CREATE INDEX ix_chat_history_chat_ts ON chat_history " "(account_id, chat_id, ts DESC)" ) op.execute( "CREATE INDEX ix_read_receipts_chat ON read_receipts " "(account_id, chat_id, kind, message_id DESC)" ) def downgrade() -> None: op.execute("DROP INDEX IF EXISTS ix_read_receipts_chat") op.execute("DROP INDEX IF EXISTS ix_chat_history_chat_ts") op.execute("DROP INDEX IF EXISTS ix_media_message") op.execute("DROP INDEX IF EXISTS ix_avatars_owner") op.execute("DROP INDEX IF EXISTS ix_messages_chat_date")