第5章 アプリケーションの作成
5.2 アプリケーション作成時の注意事項
参照
ODBCデータソース設定の詳細については、“アプリケーション開発ガイド(ODBCドライバ編)”を参照してください。
また、Connection Managerのプロセスが強制終了した場合、以下のSQLSTATE値が通知されます。
SQLSTATE値 意味
40705 Connection Managerの強制終了
このSQLSTATE値が返却された場合、コネクションは切断されます。また、Connection Managerが終了しているため、コ
ネクションの再接続処理は行われません。
ノードダウンを検知した場合の注意
運用系システムのノードダウンが発生した場合、アプリケーションにはSQLSTATE値に“40703”が返却されます。この時、
アプリケーションのコネクションは切断されません。
アプリケーションはコネクションの再接続を行う必要はなく、トランザクションを最初から実行し直します。接続先データベー スサーバは、待機系システムに切り替わり、トランザクションが実行されます。
また、実際に運用系システムのノードダウンが発生した場合に、アプリケーションのトランザクションを再開する時に、以下 の点に注意してください。
ノードの切替え中のアクセス
アプリケーションがトランザクションを開始した時に、ノードの切替え処理を行っている場合、ノードの切替え処理が完 了するまでSQL文の実行要求を待機します。
この処理待ち時間は、以下のパラメタを指定することで、制御可能です。
C/COBOLアプリケーションの場合は、動作環境ファイルのWAIT_TIMEパラメタを指定します。
Javaアプリケーションの場合は、JDBCデータソース登録ツールの[JDBCデータソースオプション設定]画面で、[その 他パラメタ]にCLI_WAIT_TIMEパラメタを指定します。指定方法は以下のとおりです。
ctuneparam='CLI_WAIT_TIME=(待ち時間)'
参照
JDBCデータソース登録ツールの詳細については、“アプリケーション開発ガイド(JDBCドライバ編)”を参照してくださ い。
ODBCアプリケーションの場合は、ODOSのODBCデータソースを設定する[Symfoware/RDBオプション設定]画面 で、[その他パラメタ]にCLI_WAIT_TIMEパラメタを指定します。指定方法は以下のとおりです。
CLI_WAIT_TIME=(待ち時間)
参照
ODBCデータソース設定の詳細については、“アプリケーション開発ガイド(ODBCドライバ編)”を参照してください。
なお、上記パラメタに指定した時間内に処理が完了しなかった場合、タイムアウトとなり、SQLSTATE値に“40003”が 返却されますが、コネクションは切断されません。要求に応じて再度トランザクションを再開してください。
以下にC/COBOLアプリケーションの場合のノードの切替え中のアクセス例を示します。
資源偏在先のノードがダウンしている場合のアクセス
コネクション接続先のノードは稼動しているが、資源偏在先のノードがダウンしている場合は、SQLSTATE値 に“71003”が返却されます(この時トランザクションはROLLBACKされません)。アプリケーションはROLLBACK文を 発行した後、要求に応じてトランザクションを再開してください。
ダウンリカバリ中のアクセス
フラッシュトリートメントリカバリ機能を利用する場合、アプリケーションがトランザクションを開始した時に、フラッシュト リートメント閉塞中であるならば、SQLSTATE値に“71410”が返却されます(この時トランザクションはROLLBACKされ ません)。フラッシュトリートメント閉塞はダウンリカバリが完了すると解除されますので、アプリケーションはROLLBACK 文を発行した後、要求に応じてトランザクションを再開してください。