001-003418

パッケージ版 Garoon

関心あり
0人の方が関心を示しています

複数のユーザーが同時にメールを送信すると、送信後にDB01213エラーが表示される場合がある。

種別
不具合
機能
  • メール
再現バージョン
  • 2.0.0
  • 2.0.1
  • 2.0.2
  • 2.0.3
  • 2.0.4
  • 2.0.5
  • 2.0.6
  • 2.1.0
  • 2.1.1
  • 2.1.2
  • 2.1.3
  • 2.5.0
  • 2.5.1
  • 2.5.2
  • 2.5.3
  • 2.5.4
  • 3.0.0
  • 3.0.1
  • 3.0.2
  • 3.0.3
  • 3.1.0
  • 3.1.1
  • 3.1.2
  • 3.1.3
  • 3.5.0
  • 3.5.1
  • 3.5.2
  • 3.5.3
  • 3.5.4
  • 3.5.5
  • 3.7.0
  • 3.7.1
  • 3.7.2
  • 3.7.3
  • 3.7.4
  • 3.7.5
  • 4.0.0
  • 4.0.1
  • 4.0.2
  • 4.0.3
  • 4.2.0
  • 4.2.1
  • 4.2.2
  • 4.2.3
  • 4.2.4
  • 4.2.5
  • 4.2.6
  • 4.6.0
  • 4.6.1
  • 4.6.2
  • 4.6.3
  • 4.10.0
  • 4.10.1
  • 4.10.2
  • 4.10.3
  • 5.0.0
  • 5.0.1
  • 5.0.2
  • 5.5.0
  • 5.5.1
  • 5.9.0
  • 5.9.1
  • 5.9.2
  • 5.15.0
  • 5.15.1
  • 5.15.2
  • 6.0.0
  • 6.0.1
  • 6.0.2
  • 6.0.3
改修バージョン
公開日
2010-03-08
更新日
2014-04-02

詳細

【準備】

  • ユーザーを追加します。

    例:
    ・ユーザー1
    ・ユーザー2

  • 追加したユーザーにメールアカウントを追加します。

    例:
    ----------------------
    ユーザー1:user1@xxxxx.co.jp
    ユーザー2:user2@xxxxx.co.jp
    ----------------------

  • 「ログの設定」画面にて、メールの重要情報を出力する設定にします。

    例:
    ----------------------
    対象カテゴリ:メール
    対象深刻度 :「重要情報」を出力する
    ----------------------

  • ユーザー1及びユーザー2の個人設定で「送信前に確認画面を表示する」をONに設定します。

    補足:
    ・「個人設定(各アプリケーション) > メール > 一般設定」画面にて設定します。

 

 

【再現手順】

  1. ユーザー1でアプリケーション画面にログインし、[メール] > [メールを送る] の順にクリックします。

  2. 宛先を入力し、[送信する]をクリックします。

  3. 別のWebブラウザーにて、ユーザー2でアプリケーション画面にログインし、[メール] > [メールを送る] の順にクリックします。

  4. 宛先を入力し、[送信する]をクリックします。

  5. ユーザー1とユーザー2で同時に[送信する]をクリックします。

 

→現象発生:

  • どちらかのユーザーで次のエラーが発生する場合があります。
    ---------------------
    エラー (DB01213)
    データベース上でデッドロックが発生しました。

    原因
    Deadlock found when trying to get lock; try restarting transaction
    ---------------------

  • エラーが発生したユーザーの[send]ログが出力される場合があります。

    例:
    ---------------------
    [send] mail (mid:x, subject:'xxx', data:'xxx', to:'userx@xxxxx.co.jp')
    ---------------------

補足

  • 現象発生時、エラーが発生したユーザーの[send]ログが出力された場合は、メールは送信されています。

  • バージョン 2.5.0以降のガルーンの場合、ユーザーIDを50で割った余りが一致するユーザーがメールを同時に送信しない限り、現象は発生しません。

    例:
    ユーザー1(uid=2)とユーザー51(uid=52)で同時にメールを送信する。

    ※ ユーザーID (uid)とは、ユーザーを識別するために割り当てられた数字です。
    ※ ユーザーIDは、次の画面のURLで確認できます。
        「システム管理(基本システム) > ユーザー > 組織/ユーザーの設定 > ユーザーの詳細」画面

回避/対応方法

本現象に対する有効な回避方法や対応方法はありません。