この方法で2000年までに自動インクリメントするソート列を持つテーブルにページを挿入しようとしています:
INSERT INTO pages (sort,img_url,thumb_url,name,img_height,plank_id)
SELECT IFNULL(max(sort),0)+2000,'/image/path.jpg','/image/path.jpg','name',1600,'3'
FROM pages WHERE plank_id = '3'
問題は、画像のアップロード時にこれらの挿入をトリガーすることです。そのため、これらのクエリのうち 5 ~ 10 個がほぼ同時に実行されます。これにより、何らかの理由で一部のファイルでデッドロックが発生します。
何が起こっているのですか?
編集: MySQL 5.5.24 と InnoDB を実行しています。並べ替え列にはインデックスがあります。