スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド

[目次][索引][前へ][次へ]

11.2 UAP障害の回復

UAPに障害が発生した場合,HiRDBシステム全体が停止しないように対処する必要があります。

ここでは,UAP障害時の回復方法について説明します。

UAP障害時の回復方法としては,次に示す三つに分けられます。

UAP障害の種別と回復方法を次の表に示します。

表11-5 UAP障害の種別と回復方法

障害種別 検 出 方 法 システム側の処置 回 復 方 法
UAP異常終了 UAP処理時間監視機能 UAPの切り離し UAPトランザクションのロールバック
UAP無限ループ
トランザクション未終了
UAP処理エラー サーバ1内の各種エラー検出機能 UAPへエラー応答 UAP指示によるトランザクションのロールバック
UAPによるエラー検出とロールバック要求 UAPによるエラー検出 UAPの指示に従う
デッドロック HiRDBのデッドロック検出機能 UAPへエラー応答(暗黙的ロールバック) UAPトランザクションの終了
メモリ不足 メモリ確保時のエラー UAP起動不可 共有メモリ,プロセス固有メモリの見直し2

注※1
フロントエンドサーバ,及びバックエンドサーバを示します。

注※2
共有メモリ,プロセス固有メモリの見直しについては,システム管理者に依頼してください。
<この節の構成>
(1) UAP処理時間監視機能
(2) サーバ内の各種エラー検出機能
(3) UAPによるエラー検出
(4) メモリ容量の再検討

(1) UAP処理時間監視機能

UAPを実行すると,HiRDBのUAP処理時間監視機能によってタイマ監視されます。これは,UAPに異常が発生してHiRDBの処理が長時間止まった状態になることを防止するためです。

タイマ監視は,クライアント環境定義で環境変数PDSWAITTIMEによって監視する時間を指定します。時間を指定しないと,HiRDBの仮定値によって監視します。

クライアント環境定義の詳細については,「6.6 クライアント環境定義(環境変数の設定)」を参照してください。

(2) サーバ内の各種エラー検出機能

HiRDB/パラレルサーバの場合,SQLの実行中にフロントエンドサーバ内,又はバックエンドサーバ内で,データベース処理のプロセス異常などのエラーを検出すると,プロセスの切り離しなどが必要なため,UAP側にエラーステータスを返します。エラーステータスに対してUAPがロールバック要求を発行すると,HiRDBとしての回復処理がされます。

(3) UAPによるエラー検出

UAP内で障害を検出した場合,ロールバック要求を発行することで回復処理がされます。

なお,UAPが正常に処理された場合,UAPからのDISCONNECT指示によってプロセスが切り離されます。

(4) メモリ容量の再検討

共用メモリ,及びプロセス固有メモリが不足すると,メモリ,又はディスク容量の不足を表すメッセージが出力されます。メッセージが出力された場合,UAPを起動するために必要なメモリを確保した後,UAPを再実行します。

なお,共用メモリ,プロセス固有メモリの見直しについては,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照するか,又はHiRDB管理者に連絡してください。