背景
線上經常偶發死鎖問題,當時處理一張表,也沒有聯表處理,但是有兩個mq入口,並且消息體存在一樣的情況,頻率還不是很低,這麼一個背景,我非常容易懷疑到,兩個消息同時近到這一個事務裏面導致的,但是是偶發的,又模擬不出來什麼場景會導致死鎖,只能進行代碼分析,問題還原的方式去排查問題。
業務代碼簡化成下面
begin
update test set yn = 0 where dm_code = "
/*
給你單鏈表的頭指針 head 和兩個整數 left 和 right ,其中 left = right 。請你反轉從位置 left 到位置 right 的鏈表節點,返回 反轉後的鏈表 。
*/
前置知識: lc0206 反轉鏈表
Lc0092這題的的思路和206題的反轉鏈表一樣,難在操作。
先貼代碼
拿上示例,來看圖解
1、首先是拼接上dummy,最終返回dummy