Interstage Application Server トラブルシューティング集
目次 索引 前ページ次ページ

第11章 データベース連携サービス使用時の異常

11.8 Oracleを使用した場合の異常

インダウトトランザクションの手動ロールバック機能を使用した場合

 Oracleを使用する場合、Oracleのインダウトトランザクションの手動ロールバック機能を使用してROLLBACK FORCEにより、強制的にロールバックさせた後、再度リソース管理プログラムを起動させると、リカバリ時に以下のエラーメッセージが表示され、未解決トランザクションが残ります。

  OTS:エラー:ots9666: システムメモリまたはシステムリソースが不足しました

 また、otspendlistコマンドでcommitした場合、以下のエラーメッセージが表示されます。

  OTS:エラー:ots9348: commit処理でエラーが発生しました

 この場合には、otspendlistコマンドによりrollbackさせることによりインダウト状態を解除してください。

Oracle8系使用時に行ロックが解除されない場合

 行ロックを取得した後に複数の行を更新し、ロールバック処理を行った場合に、ロールバック処理は正常に終了するが行ロックが解除されない場合があります。このような現象が発生した場合には、Oracleの初期化パラメタ(init[SID].ora ファイルに cleanup_rollback_entriesを指定することで回避することが可能です。指定する値は、以下の計算式によって求めることができます。

 cleanup_rollback_entries=最大更新行数 ÷ ロック解除待ち許容時間(分)

 もし、最大更新行数が1000行で、かつ、ロック解除待ち許容時間が5分の場合には、以下のように設定します(1000÷5=200の式になります)。

 cleanup_rollback_entries=200

Oracle8.1.7をカスタムインストールし、JTSとEJBを使用する場合

 Oracle8.1.7をカスタムインストールした環境で、EJBがグローバルトランザクションを使用する場合には、以下に示す機能がインストールされていないと正しく動作しない可能性があります。定義などの設定が正しく行われているのに以下の事象になる場合には、本現象の可能性があります。

[対処方法]
 Oracle8.1.7をインストールする場合には、必ずJServer付きのOracleデータベースを選択するようにしてください。また、Database Configuration Assistantを利用してDBを作成する場合には、JServerに必ずチェックを入れて作成するようにしてください。

 すでに作成済みのデータベースの場合には、以下を実行することでJServerオプションを付加することが可能です。

%ORACLE_HOME%\javavm\install\initjvm.sql
%ORACLE_HOME%/javavm/install/initjvm.sql

 ただし、この場合には初期チューニングを手動で行う必要があるため、インストーラもしくはDatabase Configuration Assistantを利用してデータベースを作成するようにしてください。

Oracle9iをカスタムインストールし、JTSとEJBを使用する場合

 Oracle9iをカスタムインストールした環境で、EJBがグローバルトランザクションを使用する場合には、Oracle EJEが有効になるようにデータベースを構築する必要があります。
 データベースの設定方法については、Oracle9iのマニュアルを参照してください。

rollbackを行ったときに、XAER_NOTAが発生した場合

 2つのリソースに対してrollback処理を行ったときに、片方のリソースのみ成功しもう片方のリソースではXAER_NOTAが発生する場合がある。

[対処方法]
 Oracleが正しくインストールされていないか、またはデータベースが正しく作成されていない可能性があります。OracleをJServerオプション付きで再インストールするか、データベースの再作成時にJServerオプションを付加するようにしてください。

Oracleにアクセスしたときに、メッセージが出力される場合

 Oracleにアクセスしたときに、以下のメッセージが出力される場合がある。

  java.sql.Exception: ORA-12560: TNS: プロトコル・アダプタ・エラー

[対処方法]
 OracleのSIDが複数ある場合など、ORACLE_SIDが正しく設定されていないために出力されます。正しいORACLE_SIDを設定する必要があります。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2006