| 123456789101112131415161718192021222324252627282930313233 |
- """add transfer retry fields
- Revision ID: b1c2d3e4f5a6
- Revises: a1b2c3d4e5f6
- Create Date: 2026-05-23 17:15:00.000000
- """
- from typing import Sequence, Union
- from alembic import op
- import sqlalchemy as sa
- # revision identifiers, used by Alembic.
- revision: str = 'b1c2d3e4f5a6'
- down_revision: Union[str, None] = 'a1b2c3d4e5f6'
- branch_labels: Union[str, Sequence[str], None] = None
- depends_on: Union[str, Sequence[str], None] = None
- def upgrade() -> None:
- op.add_column('pay_transfer', sa.Column('retry_count', sa.Integer(), nullable=False, server_default='0', comment='反查重试次数'))
- op.add_column('pay_transfer', sa.Column('next_retry_at', sa.DateTime(), nullable=True, comment='下次反查时间'))
- op.execute("""
- CREATE INDEX idx_transfer_retry ON pay_transfer (next_retry_at)
- WHERE status = 'DEALING' AND retry_count < 4
- """)
- def downgrade() -> None:
- op.execute("DROP INDEX IF EXISTS idx_transfer_retry")
- op.drop_column('pay_transfer', 'next_retry_at')
- op.drop_column('pay_transfer', 'retry_count')
|