45 lines
1.6 KiB
Python
45 lines
1.6 KiB
Python
"""ad_ecpm_record.trace_id(展示收益归属到比价/领券 trace)
|
|
|
|
信息流(Draw)展示 eCPM 上报时带上本场比价/领券 trace_id,落此列;领券数据 / 比价记录看板
|
|
按 trace_id 聚合"本次广告收益"。激励视频/福利/旧客户端为 NULL。
|
|
|
|
本迁移原以 (11c44afbea58, merge_pages_override_coupon_slot) 为双亲、顺带收敛双 head,
|
|
但与它并行落 main 的 merge_selfstat_coupon_slot 已用同一对双亲做了纯收敛 → 同一对
|
|
父节点出现两个收敛点、main 上又成双 head。故重挂到该 merge 之后成单链(仅改链接、
|
|
schema 改动不变;两文件都保留,已 stamp 在 merge 上的库可直接线性升级)。
|
|
|
|
Revision ID: ad_ecpm_trace_id
|
|
Revises: merge_selfstat_coupon_slot
|
|
Create Date: 2026-07-10
|
|
"""
|
|
from typing import Sequence, Union
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
|
|
revision: str = "ad_ecpm_trace_id"
|
|
down_revision: Union[str, Sequence[str], None] = "merge_selfstat_coupon_slot"
|
|
branch_labels: Union[str, Sequence[str], None] = None
|
|
depends_on: Union[str, Sequence[str], None] = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
# SQLite 下 ADD COLUMN(可空)与 CREATE INDEX 均原生支持,无需 batch_alter_table
|
|
# (同 ad_feed_reward_trace_id 迁移)。
|
|
op.add_column(
|
|
"ad_ecpm_record",
|
|
sa.Column("trace_id", sa.String(length=64), nullable=True),
|
|
)
|
|
op.create_index(
|
|
op.f("ix_ad_ecpm_record_trace_id"),
|
|
"ad_ecpm_record",
|
|
["trace_id"],
|
|
unique=False,
|
|
)
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.drop_index(op.f("ix_ad_ecpm_record_trace_id"), table_name="ad_ecpm_record")
|
|
op.drop_column("ad_ecpm_record", "trace_id")
|