Linux版Web Agentでのセマフォ関連のエラーについて

Document created by Koichi_Ikarashi Employee on Apr 21, 2016
Version 1Show Document
  • View in full screen mode

文書番号: JTEC002493

製品名: CA Single Sign-On

バージョン: r12.5x

OS: Linux

 

◆ 問題の概要

Apache WebサーバにWeb Agentを設定して起動したところerror_logファイルに以下のようなエラーが出力されました(抜粋)。

[Error] [CA WebAgent IPC] [13679] [CSmSem::SemWait] Error performing decrement operation on semaphore 1572880 - Identifier removed (43)

[Error] [CA WebAgent IPC] [13679] [CSmNamedMutex::Lock] Error reinitializing mutex with key base 0xc8

[Error] [CA WebAgent IPC] [13680] [CSmSem::SemWait] Error performing decrement operation on semaphore 1572880 - Identifier removed (43)

. . . . .

[Error] [CA WebAgent IPC] [13669] [CSmSem::SemWait] Error performing decrement operation on semaphore 1572880 - Identifier removed (43)

[Error] [CA WebAgent IPC] [13681] [CSmSem::SemNotify] Error performing increment operation on semaphore 1572880 - Identifier removed (43)

 

◆原因と対策

このエラーメッセージは存在しないセマフォ(semaphore)に対して削除処理を行ったために出力されたものです。一般的にセマフォのリソース不足の場合にこのようなセマフォ関連のエラーメッセージが出力されることがあります。以下の手順でセマフォ設定を調整してください。

 

1. 以下のコマンドを実行してセマフォの設定値を確認します。

# sysctl kernel.sem

出力例:

kernel.sem = 250        32000   32 128

 

出力された数値は(1) SEMMSL, (2) SEMMNS, (3) SEMOPM, (4) SEMMNIにそれぞれ対応しています。

 

2. (4) SEMMNIの設定値を大きくします。

コマンド実行例(値128192に変更):

# sysctl  -w  kernel.sem="250 3200 32 192"

 

3. Webサーバを再起動します。

 

◆補足

このセマフォ設定については英文の技術情報TEC529712で説明されていますが、(4) SEMMNI(2) SEMMNSを変更するように指示されています。

 

各パラメータの意味は以下のとおりです。

(1) SEMMSL:  セマフォ識別子単位のセマフォ数の最大値

(2) SEMMNS: システム全体でのセマフォ数の最大値

(3) SEMOPM: semopコール単位でのオペレーション数の最大値

(4) SEMMNI:  セマフォ識別子の最大値

 

インターネット上のWebページを参照すると、以下のような設定上の条件が記載されているものが見受けられます。必要に応じてこれらも参考としてください。

  1. (2) SEMMNSの算出式は以下となる:      (2) SEMMNS = (1) SEMMSL × (4) SEMMNI
  2. (3) SEMOPMの値は(1) SEMMSLと同じにする: (3) SEMOPM = (1) SEMMSL

 

参考

TEC529712

Setting MaxResourceCacheSize and MaxSessionCacheSize agent parameters for Shared Memory on Linux.

Attachments

    Outcomes