変換デッドロックで夜露死苦
やっぱり、最後まで残るのはデータベースの同時更新系の不具合なんですよねぇ。 同一のコードをほぼ同時に走らせる試験において、データベースが「デッドロックさせるな、コラァ!!」と怒るんです。 同一のコードでデッドロックなど、普通は起こりませんよ。 一体、何事だ???
情報技術者試験(だっけ?)において、デッドロックへの対処は同一の順序で処理するのが道理だとされている(らしい)。 同一のコードなのだから、当然、同一の順序です。 それ以前に、各トランザクションは共通のレコードを更新しない。 挿入も削除も行なわない。 単に各々のレコードを選択、更新するのみ。 つまり、想定ではロックすら発生しないはず。 一体、何事だ???
そんな“道理”は通用しないのが『SQL Server』のすごいところ。 MSはいつだって独り歩きですよ。 通常のデッドロック、つまり、「サイクルデッドロック」とは異なる、「変換デッドロック」というのが起こるらしい。 あぁ、明らかにこれっぽいな。
「変換デッドロック」ってなんだよ。 「デスメタル」の親戚か? 「分散トランザクション」の件といい、「変換デッドロック」の件といい、MSは下手な言葉を濫用するくせ、言葉の説明責任を果していない!!