1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
-- 离线异常不关联阈值;已有阈值异常保持原聚合规则。
ALTER TABLE t_test_warning_exception
    ADD COLUMN exception_type VARCHAR(32) NOT NULL DEFAULT 'THRESHOLD' AFTER test_id,
    MODIFY COLUMN threshold_id BIGINT NULL,
    DROP INDEX uk_warning_exception_open,
    DROP COLUMN open_dedupe_key;
 
ALTER TABLE t_test_warning_exception
    ADD COLUMN open_dedupe_key VARCHAR(512) GENERATED ALWAYS AS
        (CASE WHEN exception_status = 'OPEN' THEN
            CASE WHEN exception_type = 'DEVICE_OFFLINE'
                 THEN CONCAT('offline:', test_id, ':', source_type, ':', source_identity)
                 ELSE CONCAT(test_id, ':', threshold_id, ':', metric_code) END
            ELSE NULL END) STORED,
    ADD UNIQUE KEY uk_warning_exception_open (open_dedupe_key);