Coverage for slidge/db/alembic/versions/c594846b3e03_remove_useless_group_origin_msg_table.py: 94%

16 statements  

« prev     ^ index     » next       coverage.py v7.15.2, created at 2026-09-29 05:05 +0000

1"""remove useless 'group_origin_msg' table 

2 

3Revision ID: c594846b3e03 

4Revises: 83bd572c8161 

5Create Date: 2026-09-06 00:05:18.642925 

6 

7""" 

8 

9from collections.abc import Sequence 

10 

11import sqlalchemy as sa 

12from alembic import op 

13 

14# revision identifiers, used by Alembic. 

15revision: str = "c594846b3e03" 

16down_revision: str | None = "83bd572c8161" 

17branch_labels: str | Sequence[str] | None = None 

18depends_on: str | Sequence[str] | None = None 

19 

20 

21def upgrade() -> None: 

22 with op.batch_alter_table("mam", schema=None) as batch_op: 

23 batch_op.add_column(sa.Column("origin_id", sa.String(), nullable=True)) 

24 

25 op.execute( 

26 """ 

27 UPDATE mam 

28 SET origin_id = group_msg_origin.xmpp_id 

29 FROM group_msg_origin 

30 WHERE group_msg_origin.legacy_id = mam.legacy_id 

31 AND group_msg_origin.foreign_key = mam.room_id 

32 """ 

33 ) 

34 

35 with op.batch_alter_table("group_msg_origin", schema=None) as batch_op: 

36 batch_op.drop_index(batch_op.f("ix_group_msg_origin_legacy_id")) 

37 

38 op.drop_table("group_msg_origin") 

39 

40 

41def downgrade() -> None: 

42 raise RuntimeError("downgrades are not supported")