きどたかのブログ

いつか誰かがこのブログからトラブルを解決しますように。

z/OS

ReflectionとNative OOM

前から不思議に思ってた事が1つ分かった。 IBM Potential native memory use in reflection delegating classloaders - United States リフレクションでMethodごとにsun/reflect/DelegatingClassLoaderや sun/reflect/GeneratedMethodAccessor<N>という具合の</n>…

DB2 for z/OSのデッドロックに関与したSQLの特定方法

デッドロックの分析に関して小さくまとまった資料があるので読んでいた。 全部を説明する気がなくなるくらいさっぱりしている。 SQLを特定するまでの話で、そのSQLの何が悪いかを扱うものではない。 IBM Techdocs Technote: Identifying the static SQL stat…

Running out of ASIDs

z/OSでASIDの数が枯渇するという話です。 2年くらい前に開発環境構築後に経験したことを 今の知識で補足して書いてみようと思う。 ASIDの数は有限で、再利用出来るのと、再利用出来ないのがある。 WAS for z/OSを導入後、MQをBINDINGS MODEで繋ぐため、 JCL…

STOPコマンドでWASが停止しない時の正しい対処

開発環境では結構起ってると思う事象で、 これが本番で起きたらどう対処するべきかを考えていた。 多くの人が取る行動は以下のものだと思う。 ダンプを取る CANCELコマンド (それでも駄目なら)FORCEコマンド 惜しい、これでは80点。 ここから少しだけ私の提…

MQ GTFトレースを読めるようになるには

素人でもMQODとMQMDとMQGMOとMQPMOくらいは読めるようになる。 どういう情報を見てトレースを読めばいいかということを書いてみる。 要領としては3点 項目数を理解する 項目に使われるバイト長を理解する ビットで理解する このWSTEに出てくる値を材料に説明…

WAS for z/OSでのTIMEOUTの調査方法

よくある問題であるため、調査方法はシンプル。 まずはこれを読むのが一番いい。 Webcast Replay: Diagnosing Timeouts in WebSphere Application Server for z/OS http://www-01.ibm.com/support/docview.wss?uid=swg27007547 少しだけ補足してみる。 IP VE…

z/OS USSでのpsコマンドのオプション

暇つぶしにz/OSでしか使えないようなpsコマンドのオプションを少し書いてみる。 何を書くかというと、-oオプションについて。 詳しくはUNIX System Services Command Referenceを読めばいい。 個人的にこれまで使ってるのはこんなのとか。 args,xasid,jobnam…

ラージ・ページ・サポート(-Xlp)の考察

SRに-Xlpで1MBのFRAMEを取れないって事象を調べている。 前から疑問だった、-Xlp指定してないのにCRが1MBのFRAME取ってる件もついでに調べている。 少し理解が深まった気がする。 まず-verbose:gcでrequestedPageSizeとpageSizeは確認している。 確かに1MBの…

MDBの性能を処理対象データに基づいて計測する方法の考察

z/OSではRMFを使って性能測定をするのが普通のようで、おそらくどこでもやっているだろう。 どれだけ性能分析をカテゴライズ出来るかに興味がある。 性能分析といっても色々あるからな・・・、 ここではアプリケーションの立場からの分析を補助出来るか否か…

ICH408I INSUFFICIENT AUTHORITY TO STAT

意外と単純、z/OSのUSS環境でよくある問題です。 しかし、なぜか調査方法が人によって違うと感じてます。 だいたいの人が間違った方向へ進み無駄に時間を浪費する。 なので自分なりの方法およびその解決までの思考を纏めておこうと思う。 一番よく見るメッセ…

SVCダンプを読むための知識

まだ全然読めてるとは言いがたい部分があるが 前回(SVCDUMPを読むための初歩 - きどたかの日記)から多少は詳しくなった気がする。 コントロールブロックを読むためには、その構造を知った方が良いと自分は考えていて、 コントロールブロックの関係性をちょっ…

今日のClassNotFound解析(難易度:初級)

ClassNotFoundは解析が簡単な問題のひとつです。 それはたとえWASのクラスであってもです。 ClassNotFoundの問題を自力で調べられないようではまだまだお子様でしょう。 まず初めに、どのクラスが見つからないかがメッセージで出てるでしょう。 次にやること…

WASzのCTRACEのセットアップ

過去に自分でも経験したことなので書いてみる。 cell-scopeのWebSphere変数Daemon_ras_trace_ctraceParmsのやつです。 初期のセットアップでは60が設定されるでしょう。 これでPARMLIBからCTIBBO60を探します。 あと勝手にCTIBBO00も探します。 無かったらIN…

今日のOOM解析(難易度 初級)

OutOfMemoryErrorがきた。 まずGCログを見る。 Javaヒープ足りてるな。 じゃあネイティブが怪しいんだろ。 それにしてもafの他にsys出てるけど何でSystem.gc()とか使ってるんだろう。 MQとDB2の設定をわかる範囲でかき集める。 一般的にネイティブは、Javaの…

JZOSのZUtilのsubstituteSystemSymbolsについて

使ったことはないけれど、その使い方を書いてみる。 理屈として、IEASYMxxにおけるSYMDEFと同じと思われる。以上、説明終了w &SYSNAME &SYSCLONE &SYSPLEX &SYSR1 &SYSALVL および、SYMDEFで定義したものが取れると思う。 取れるだけじゃなくて、substring…

WMQやDB2などのCPF(Command Prefix)について

CPFについて調べてあることを書いてみる。 CPFは、WMQやDB2にコマンドを打つ時に使うやつだ。 いきなりで申し訳ないが、CPFというアセンブラのマクロがある。 どうやらこのマクロでCPFを登録しているようだ。 CPFは、IEFSSNxxで登録する。普通はSYS1.PARMLIB…

WASzにおけるSTOKENについて

WebSphere Application Server for z/OSを使っていると、 STOKENという言葉に出くわす人がいると思う。 STOKENはSpace Tokenの略だと思われる。 Address SpaceやData Space毎に持ってるTokenということだ。 ASCRE macroのOutput ParameterにODAというのがあ…

SVCDUMPを読むための初歩

絶賛IPCS勉強中。相変わらず独学が多い。 今日、少し参照したマニュアル。(たぶん誰も読まないと思う) z/OS V1R12.0 MVS Data Areas, Vol 1 (ABEP-DCCB) z/OS V1R12.0 MVS Data Areas, Vol 2 (DCCD-IEFDOKEY) z/OS V1R12.0 MVS Data Areas, Vol 3 (IEFDORC…

証明書がらみのRACFコマンド

証明書がらみのことを最近やっているので、ちと書いてみる。 詳しいことは、次のドキュメント等を読もう。 Security Server RACF Command Language Reference ※マニュアル WebSphere Application Server V7.0 Security Guide ※Redbook Encryption Facility f…

WASzのデバッグポート

思い出したかのように、昔の引き出しからどうでも良い情報を書いてみる。 サーバーのページで、デバッグサービスを使うのが普通。 しかし、SRが複数あるとこれではダメ。ポートが重複して、残りのSRが起動出来ない。 そんなこんなで周りに人にはデバッグする…

WASzにおけるWLMの使われ方のイメージ

これは自分の中のイメージであって、正しいというわけではありません。 アメリカに来る前から抱いているイメージです。 きっとほとんどの人がちんぷんかんぷんな内容になるでしょう。 WASzは2つのWLMサービスを使用していると思う。 1つはQueuing Manager Se…

z/OSでJavaを活用するためのJZOSのTips

com.ibm.jzos.CatalogSearchクラスというのがある。当然ながら、カタログに登録されてないものは取ってこれない。 まあカタログに登録しない使い方をすることは稀だろう。前に作ったコードを思い出しながら解説しよう。 CatalogSearch cs = new CatalogSearc…

-1の-1乗が1になってるよ

珍現象。 ふむ、バグという名前の地雷を踏んだようだ。 たぶんバグ、きっとバグ。 なんでこんなバグが残ってるんだ。 おいらの自作Java累乗関数でも計算できるのに。 -1の-1乗は1と誤り。 -2の-1乗は-0.5と正しい。 公式から予想するに、の処理が怪しい。 こ…

リスナーポートとアクティベーションスペックの切り替えに失敗(バイディングのマージにご用心)

アプリケーションを「更新」で置き換えると発生するのだと思う。 ログメッセージには、ibm-ejb-jar-bnd.xmlのの箇所について変だと言ってくる。 resource-refだとかresource-env-refだとか3種類くらいのうちからなんか書けという感じ。 僕は確かにejb-jar.xm…

z/OSでも動いたPerformance Inspector

Webページ通りでは動かなかったのだが、WebSphere Applicaiton Server v7.0 for z/OSでもPerformance Inspectorは動作しました。 PATHとLIBPATHの通し方が分からなかったが、IBMに質問をしたらすぐに回答がきた。 素晴らしいじゃないか。 自分で設定作業をし…

Performance Inspectorというプロファイリングツールを使ってみた

日本語資料がほとんど見当たらないので、なんか書き残しておこう。 Performance Inspectorの情報は、この2つを把握しておけばいいでしょう。英語だよ。 http://perfinsp.sourceforge.net/ http://www.alphaworks.ibm.com/tech/pi Performance Inspectorはプ…