いや、この業界に5年もいて知らなかったのかよ、って言われれば 言い返せないことなんですが・・・ 試験中に、Oracleでデッドロックが発生しました。 でも、ソースコードをレビューした限りでは、 複数テーブルに対するupdateにもselect for updateにも、怪しい所はなく、 「試験のやり方が悪いんじゃね?」ぐらいの勢いでした。 でも違いました。 1テーブルへのアクセスでも、デッドロックは発生するということでした。 2. 複数レコードの更新に関するもの 当然のことながら、1つのテーブルでも、デッドロックが発生する場合がある。 上記のパターンで同一テーブル内でも A, B という異なるレコードに連続してアクセスする場合には、アクセス順を一意にしておかないとデッドロックが発生する要因となる。 特に陥りやすいのは、複数レコードを一括して更新する場合は更新順が一般に不定となるため、安易に