兼容性判定
支持度none
严重度minor
置信度high
依据规则ora.syntax.for_update_wait
怎么改
SET lock_timeout + FOR UPDATE
判定说明
仅 NOWAIT/SKIP LOCKED;错误码与应用重试逻辑联动改
库侧 / 应用侧路径
库侧改造
需人工确认改造边界
应用侧改造
需人工确认改造边界
推荐路线:case_by_case。验证建议:PG 系只有 NOWAIT/SKIP LOCKED,无 WAIT n;等待超时需改会话级 lock_timeout 参数模拟,错误码与应用重试逻辑需联动改
规则样例
SELECT * FROM acct WHERE id = 1 FOR UPDATE WAIT 5
SELECT * FROM job_queue FOR UPDATE OF status WAIT 10
SELECT * FROM acct WHERE id = 1 FOR UPDATE NOWAIT