WMQI(WBIMB)の話


WSDDより。
WMQI/WBIMB稼動環境で、AIX V5.1のML07適用時の注意点 (MQCICS-05-02)

概要

AIX V5.1にML07を適用すると、WebSphere MQ Integrator/WebSphere Business Integration Message Brokerのブローカーが起動できません。AIXの修正モジュールが提供されていますのて適用ください。

内容としては上記にもあるようにAIX5.1にML07をあてたらAPARをあてよ!という話。まぁあてるべきものは内容を読めばわかります。で、あてられない環境の場合*1の回避策も同時に書いてあるのですがそれを以下に引用します。
もし e-fix を適用できない場合は、暫定処置として、以下のいずれかを実行してください。   a) AIX V5.1 をメンテナンス・レベルML07適用前の状態に戻す   b) mqsistart スクリプトの MALLOCTYPE=buckets行を削除して、ブローカーを起動する     mqsistart スクリプト :      export MALLOCMULTIHEAP=heaps:4,considersize      export MALLOCBUCKETS=bucket_sizing_factor:8      export MALLOCTYPE=buckets ←この行を削除する
  • この行を削除する
この1文が気になるわけであります。そもそもMALLOCTYPEとは?と思うのでざっと調べてみます。まぁ単にぐぐるだけなのですが答えはすぐに見つかります。 長いので引用は避けますがパフォーマンス・マネージメント・ガイドの環境変数の項によりますと"malloc バケット"なるものを使用するための環境変数のようでMALLOCBUCKETSでmalloc バケットのチューニングを行い、MALLOCTYPEでその機能の使用の如何を決めるようですね。つまり、この機能はAIXのメモリパフォーマンスの向上のために4.3.3から実装されているようですがmqsistartで(といういかWMQI/WBIMBで)使っていたものを止めよと、そういうことですかそうですか。結果どうなるか・・・障害は回避できるけれどパフォーマンスは落ちますよ、と。経験から言えばシビアなフロー設計(数が多かったり)するところは結構メモリに気を使わなければならなかったと思いますのでこれはAPARをあてた方が吉のように思います。 ちなみにあてなければならないAPAR、IY67718の情報はこちら。 IY67718: MALLOC(0) DUMPS CORE WHEN MALLOC BUCKETS AND CONSIDERSIZE OPTION IS ENABLED

Error description

When malloc(0) is called with the malloc buckets and considersize option enabled, it dumps core. (略)

Problem summary

malloc(0) dumps core when malloc buckets and considersize option is enabled
ずいぶんアッサリ書いてあります(苦笑)。 malloc バケットに関してはAIX 5L ディファレンス・ガイド バージョン5.1版と言う文書のAIXの機能強化の説明の部分で出ているので(REDBOOKS:PDFファイル)でそちらを見るとよいでしょう。 なんてことをだらだら書いている時間は無いんですがまぁいわゆる現実逃避というやつです。こうやって時間は浪費されていくのですね(苦笑)。ここまで分かれば後は手元に環境があれば自分で再現してみるという事もやったでしょう。ですが今は出先で実はやっていることもぜんぜん違うのでココまでで終了ということにしておきましょう。

*1:AIXにAPARあてたらリブートだもんねぇ