fix(通道流量阈值): AUG26-011 修复失败/未知结果收敛、锁定 carrier 缺失出路与审计回归
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 13m29s

This commit is contained in:
2026-09-16 16:41:25 +08:00
parent 59b3df868a
commit 15bbb953db
11 changed files with 250 additions and 58 deletions

View File

@@ -24,7 +24,7 @@ BEGIN
END IF;
END $$;
DROP INDEX IF EXISTS idx_carrier_traffic_threshold_lock_submitted;
DROP INDEX IF EXISTS idx_carrier_traffic_threshold_lock_unresolved;
DROP INDEX IF EXISTS idx_carrier_traffic_threshold_lock_card;
DROP INDEX IF EXISTS idx_carrier_traffic_threshold_lock_status_period;

View File

@@ -102,11 +102,13 @@ COMMENT ON COLUMN tb_carrier_traffic_threshold_lock.deleted_at IS '软删除时
CREATE INDEX idx_carrier_traffic_threshold_lock_status_period ON tb_carrier_traffic_threshold_lock (status, period_start);
-- 四入口拒绝与周期处理按卡查当前周期锁。
CREATE INDEX idx_carrier_traffic_threshold_lock_card ON tb_carrier_traffic_threshold_lock (card_id, period_start);
-- 恢复扫描只看 submitted 子任务
CREATE INDEX idx_carrier_traffic_threshold_lock_submitted ON tb_carrier_traffic_threshold_lock (stop_status, resume_status)
WHERE deleted_at IS NULL AND (stop_status = 'submitted' OR resume_status = 'submitted');
-- 恢复扫描只看未决子任务(submitted/unknown/failed 都必须继续用只读状态查询收敛)
CREATE INDEX idx_carrier_traffic_threshold_lock_unresolved ON tb_carrier_traffic_threshold_lock (stop_status, resume_status)
WHERE deleted_at IS NULL AND (
stop_status IN ('submitted', 'unknown', 'failed') OR resume_status IN ('submitted', 'unknown', 'failed')
);
COMMENT ON INDEX idx_carrier_traffic_threshold_lock_status_period IS '通道阈值周期处理扫描的进行中锁索引';
COMMENT ON INDEX idx_carrier_traffic_threshold_lock_card IS '通道阈值按卡查当前周期锁索引';
COMMENT ON INDEX idx_carrier_traffic_threshold_lock_submitted IS '通道阈值恢复扫描的已提交子任务部分索引';
COMMENT ON INDEX idx_carrier_traffic_threshold_lock_unresolved IS '通道阈值恢复扫描的未决子任务部分索引(含结果未知与失败,谓词与 domain.UnresolvedTaskStatuses 一致)';
COMMENT ON INDEX uq_carrier_traffic_threshold_lock_key IS '通道阈值周期锁唯一键(软删感知):一个卡在一个运营商计费周期内至多一条,冲突即该周期已处理';