いろいろ挙動探ってみたけどタイムアウト値に関わらず即座にdatabase is lockedが返るのはどうやらBEGINコマンドの既定値であるDEFERREDのときだけっぽい というかBEGIN DEFERREDはINSERTとかUPDATEとかが実行されるまでロックは開始されないとか癖悪すぎるので絶対使いたくないww ちなみにタイムアウト値に関わらず即座にdatabase is lockedが返るパターンとして 1.プロセスAがトランザクション発行 2.プロセスBがトランザクション発行 3.プロセスBがINSERTなりUPDATEなりを発行(待たされる) 4.プロセスAがコミットする。ここでdatabase is locked とか。プロセスAが先にトランザクション開始してるのに何で?って感じwちなみにプロセスBの更新はエラーなしに完了します。 んで他にはBEGIN IMMEDIATEと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く