001-004487
DB分割構成またはサーバー分離構成でアプリケーションサーバーが複数台あるとき、ファイルのアップロードに失敗する場合がある。
- 種別
- 不具合
- 機能
-
- ベース
- 再現バージョン
-
- 3.0.0
- 3.0.1
- 3.0.2
- 3.0.3
- 3.1.0
- 3.1.1
- 改修バージョン
- 3.1.2
- 公開日
- 2011-06-29
- 更新日
- 2011-07-13
詳細
【発生条件】
次の条件をすべて満たすと、現象が発生する場合があります。
- DB分割構成または、サーバー分離構成でアプリケーションサーバーが複数台ある。
- lwc.iniのprop:_passwordが各アプリケーションサーバーで異なる。初期値です。
- ファイル一括添付機能が有効になっている。
【準備】
- アプリケーションサーバーが複数台あるDB分割構成またはサーバー分離構成を構築します。
【再現手順】
パターン1:
- アプリケーション画面で、[メッセージ] > [メッセージを送る]をクリックします。
- 任意の内容を入力し、添付ファイルを選択します。
→現象発生:
「INVALID_TICKET」エラーが表示されます。
パターン2:
- アプリケーション画面で、[メッセージ] > [メッセージを送る]をクリックします。
- 任意の内容を入力し、添付ファイルを選択します。
- [送信する]をクリックします。
→現象発生:
手順2のファイルが添付されていないメッセージが送信されます。
補足:
- どちらの現象が発生するかは、ロードバランサーの動作で変わります。
- 次のアプリケーションでも、ファイルをアップロードする時に同じ現象が発生する可能性があります。
- メッセージ
- 掲示板
- ファイル管理
- メモ
- メール
- ワークフロー
- マルチレポート
- ロードバランサー等でセッション維持が行われており、アクセスするアプリケーションサーバーが固定化されている場合は本現象は発生しません。
回避/対応方法
【回避方法】
次のいずれかの方法で、現象を回避できます。
- すべてのアプリケーションサーバーで、lwc.iniのprop:_passwordに同じ値を指定します。
- Webサーバーが動作しているサーバーマシンで、Webサーバーを停止します。
- スケジューリングサービスが動作しているサーバーマシンで、スケジューリングサービスを停止します。
- アプリケーションサーバーのlwc.iniを編集します。
例:
- 現象発生時
- アプリケーションサーバーA:
prop:_password = "val:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1==" - アプリケーションサーバーB:
prop:_password = "val:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2=="
- アプリケーションサーバーA:
- 回避方法適用時(アプリケーションサーバーAの値をBにコピーする。)
- アプリケーションサーバーA:
prop:_password = "val:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1==" - アプリケーションサーバーB:
prop:_password = "val:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1=="
- アプリケーションサーバーA:
補足:
lwc.iniは次のディレクトリーに配置されています。
- サーバー分離構成の場合
/(cgi実行ディレクトリー)/(インストール識別子)/lwc.ini - DB分割構成の場合
/(setting.iniの「scripts_dir」で指定したディレクトリー)/(インストール識別子)/lwc.ini
- 現象発生時
- スケジューリングサービスを起動します。
- Webサーバーを起動します。
- Webサーバーが動作しているサーバーマシンで、Webサーバーを停止します。
- ファイル一括添付機能を無効にします。
- システム管理画面で、[基本システムの管理] > [ファイル] > [一般設定]の順にクリックします。
- 「ファイル一括添付機能」のチェックボックスの選択を外します。
- システム管理画面で、[基本システムの管理] > [ファイル] > [一般設定]の順にクリックします。