Oracle Fusion Middlewareリリース・ノート 11gリリース1 (11.1.1) for Microsoft Windows (32-Bit) B55923-06 |
|
![]() 前 |
![]() 次 |
この章では、Oracle Data Integratorに関連する問題について説明します。次のトピックが含まれています。
この項では、次の問題および回避方法について説明します。
Oracle WebLogic構成ウィザードでは、データソースのOracle RAC URLはサポートされていません。データソースがOracle Data Integrator Studioで生成されたJava EEエージェント・テンプレートに含まれる場合、このテンプレートのデプロイは失敗し、次の例外が発生します。
com.oracle.cie.wizard.WizardController - Uncaught Exception java.lang.NullPointerException atcom.oracle.cie.domain.jdbc.DatasourceXBeanAspectHelper.decomposeURL
回避方法として、このデータソース定義を生成されたテンプレートに含めずに、Oracle Data Integrator Studioからデータソースをデプロイしてください。
Oracle WebLogic構成ウィザードでは、URLを解析し、わかりやすい形式でパラメータを公開するために特定のコードが使用されるため、事前定義済のJDBC URLのセットのみがサポートされています。Oracle Data Integrator Studioで生成されたJavaEEエージェント・テンプレートに、このセットに含まれていないURLやドライバを含むデータソースが含まれる場合は、次の例外が発生するため、ウィザードでこのテンプレートを使用できません。
com.oracle.cie.wizard.WizardController - Uncaught Exception java.lang.NullPointerException atcom.oracle.cie.domain.jdbc.DatasourceXBeanAspectHelper.decomposeURL
回避方法として、このデータソース定義を生成されたテンプレートに含めずに、Oracle Data Integrator Studioからデータソースをデプロイしてください。
Windowsプラットフォームで稼働するOracle Data Integrator Studioからエージェント・テンプレートを生成する場合、ターゲット・テンプレートのデフォルト・パスはC:/Documents and Settings/<username>/My Documents/agent_template.jar
に設定されます。
テンプレートがこのデフォルト・パスに生成されると、次の例外が表示されます。
Exception in thread "main" org.apache.commons.vfs.FileSystemException: Could not create file...
この例外は、このフォルダが読取り専用であるために表示されます。
回避方法として、生成されたテンプレートに対して、書込み可能な別のターゲット・パスを指定します。
エージェントの「失効したセッションの除去」機能は、接続プールの失効または停止した接続が、接続の期限切れ、または接続プール実装によって実行される接続検証テストを介して自動的に除去されることに依存します。
失効した接続が接続プールによって削除されない場合、データベースを再起動しても「失効したセッションの除去」は機能しません。エージェント自体を再起動しないかぎり、データベースを再起動しても、エージェントのその他のリクエストはいずれも機能しません。
WebLogic Serverコンテナでは、接続はテスト問合せを使用して数秒ごとに検証されます。テスト問合せ(select count(*) from <test_table_name>
)を実行するためにデータベースによって使用される表名を検証および指定することをお薦めします。
マスター・リポジトリおよび作業リポジトリのデータソースでは、表名としてSNP_LOC_REP
およびSNP_LOC_REPW
が使用されます。
もしくは、OracleリポジトリのDUAL
表を使用できます。
現在、(ODI Studio、Java SDKまたはRCUを使用する)リポジトリの作成には、Oracle Data Integratorスキーマ・バージョン・レジストリ・エントリを作成または更新するためのDBAユーザーおよびDBAパスワードが必要です。
この項では、次の問題および回避方法について説明します。
ODI Studio内では、データストア内からデータを表示するとき、データストア用に定義されたグローバル・コンテキストが存在する必要があります。
com.sunopsis.core.SnpsInexistantSchemaException: ODI-17523: この論理スキーマ/コンテキストのペアに対する接続がありません: lg1/GLOBAL。
これを解決するには、データストア用のグローバル・コンテキストを定義します。
ODI Studioのクイック編集では、結合を削除するとき、結合の選択後に結合リストがソートされると、間違った結合が削除される可能性があります。これを解決するには、クイック編集で結合を削除する前に結合リストをソートします。
ODI Studioのクイック編集では、ソースを削除するとき、削除前に警告で「いいえ」を選択した場合でもソースが削除済と表示されます。
これを解決するには、ODI Studioをリフレッシュしてからクイック編集を開くと、ソースは引き続き使用できます。
ODI Studio内では、ロード計画で最新のシナリオ参照を選択するためにロード計画をリフレッシュすると、最新のシナリオはシナリオ作成タイムスタンプによって決定されます。ODIエージェントの実行中、最新のシナリオは英字昇順のシナリオ・バージョンの文字列値によって決定されます。
ロード計画例外ステップの変数の値を上書きおよびリフレッシュすることはできません。
この時点で一般的な回避方法はありません。
場合によっては、データ・モデルには定義されているがデータベースには定義されていない制約がDDLの生成ウィザードに表示されません。ODI 11.1.1.5.0以上では制約によっては、制約をウィザードに表示するための条件が変更されています。
キー: 「データベースで定義済」フラグおよび制御タブ・フラグ内の「アクティブ」をアクティブ化する必要があります。
参照: 「定義」タブのデータベース内でアクティブ・フラグをアクティブ化する必要があります。
条件: 「データベースで定義済」フラグおよび制御タブ・フラグ内の「アクティブ」をアクティブ化する必要があります。
ロード計画実行のエクスポートはサポートされていません。現在のログのエクスポート機能では、セッションのエクスポートのみがサポートされています。
この時点で一般的な回避方法はありません。
パラレル・ステップのロード計画では、「エラーがある子の最大数」パラメータは「再開タイプ」パラメータに応じて変更されません。「再開タイプ」が「すべての子の再開」に設定されていても、現在実行中の子ステップは常に続行され、停止されません。
フォルダに同じタイプのオブジェクトが1000以上含まれる場合、マーカーは表示されません。
ODIに付属しているJythonライブラリは2.5.1に更新されています。Jythonが初期化されると、キャッシュ・ディレクトリ(cachedir)が作成されます。残存しているcachedirコンテンツが原因でJythonスクリプトで例外が発生する可能性があります。この問題が発生するのは、たとえば、IKM SQLをTeradata (TTU)に使用する場合などです。このKMでは、ターゲットへのデータのロード/パイプ・ステップで障害が発生してImportError: cannot import name _newFunctionThread
が表示されます。
ODIを使用する前に既存のcacherdirディレクトリを空にすることをお薦めします。
「OBIEE系統」ウィザードは、起動時にWindowsまたはLinuxタスクバーには表示されません。このウィザードは、タスク・マネージャ内のJavaアプリケーションとして表示されます。
この時点で一般的な回避方法はありません。
シナリオがソース・インタフェース、パッケージ、プロシージャまたは変数にアタッチされていない場合、ステップの追加ウィザードの「ルックアップ・シナリオ」ダイアログを介してロード計画にこのシナリオを追加することはできません。このようになるのは、シナリオがソース・オブジェクトなしでインポートされている場合や、ロード計画を本番リポジトリで作成する場合などです。
回避方法として、シナリオをデザイナまたはオペレータ・ナビゲータから「ステップ階層」表にドラッグしてください。Oracle Data Integratorによって、シナリオ実行ステップが自動的に作成されます。
次の例のTABLE1
のように、結合式で使用されているデータストア別名の1つの末尾が、結合式で使用されている別の別名の末尾と同じである場合、不正な結合句が生成されます。
TABLE1.COLUMN_A=OTHER_TABLE1.COLUMN_A
回避方法として、2番目の別名を変更し、最初の別名と末尾が同じにならないようにしてください。次に例を示します。
TABLE1.COLUMN_A=OTHER_TABLE1_A.COLUMN_A
ランタイム・エージェントは、userpref.xml
に指定されているユーザー・パラメータ値を考慮しません。かわりにデフォルト値が常に使用されます。
この時点で一般的な回避方法はありません。
データストアでデータ・コンテキスト・メニューを使用する場合、データ・エディタでデータを変更することは可能です。ただし、特定のテクノロジによってこれらの変更を適用する場合、無効なオブジェクト名エラーが発生することがあります。Microsoft SQL Serverの場合の例を次に示します。
[SQLServer JDBCDriver][SQLServer]Invalid object name 'dbo.SRC_CITY'.
このエラーは、カタログ(Microsoft SQL Serverのコンテキスト内のデータベース)とスキーマ名(Microsoft SQL Serverのコンテキスト内の所有者)の両方で修飾されるオブジェクト名を必要とするテクノロジによって表示されます。
データをフェッチする際、オブジェクト名は完全に修飾されますが(<catalog>.<schema>.<table_name>
)、更新を実行する際には、スキーマ名のみで修飾されるため(<schema>.<table_name>
)、検出されません。
この時点で一般的な回避方法はありません。
Zipエクスポート・ファイルでASCII以外のファイル名が誤って生成されます。これらのファイル内のASCII以外の文字はアンダースコアで置き換えられます。「ASCII以外の文字をアンダースコアに変換することはできません」ユーザー・パラメータを「はい」
に変更しても効果がありません。回避方法として、ファイルをフォルダにエクスポートし、このフォルダを圧縮してください。
「ASCII以外の文字をアンダースコアに変換することはできません」ユーザー・パラメータを「はい」に設定した場合でも、次の状況ではASCII以外の文字が不正に処理されます。
固定ファイル・リバース・エンジニアリング・ウィザードの使用時に、列の「別名」フィールドで、ASCII以外の文字がアンダースコアに置き換えられます。
デリミタ付きファイルのリバース・エンジニアリングの実行時に、ヘッダー行のASCII以外の文字が、列名でアンダースコアに置き換えられます。
回避方法として、リバース処理の後に手動で列定義を変更します。
インタフェース・エディタでは、ソース・データストア列をマッピング・プロパティ・インスペクタの実装フィールドにドラッグ・アンド・ドロップしようとすると、プロパティ・インスペクタが切り替わってソース列プロパティが表示されます。
これは、フォーカスがマッピング・プロパティ・インスペクタ内にある場合に発生します。
回避方法として、ターゲット・データストア上のマッピング・フィールドを使用して、ソース列をドラッグ・アンド・ドロップします。
この項では、次の問題および回避方法について説明します。
41.3.1項「別のタブを閉じるとOracle Data Integratorコンソール・ページのタスク・フローがリセットされる」
41.3.2項「Enterprise ManagerからログアウトしてもOracle Data Integratorコンソールに伝播されない」
Oracle Data Integratorコンソールでページを含むタブを閉じると、このタブの後のすべてのタブで、タスク・フロー(実行されたナビゲーション・アクション)がリセットされます。これらのタブに含まれるページは、最初に開いたオブジェクトにリセットされます。
この時点でこの問題の回避方法はありません。
シングル・サインオン(SSO)をアクティブ化してOracle Data Integratorコンソールと組み合せてEnterprise Manager Fusion Middleware Control (EM)を使用した場合、Enterprise ManagerでSSOからログアウト中のユーザーが、同じブラウザ・ウィンドウでダイレクトURLを入力することで、Oracle Data Integratorコンソールのページにアクセスできる可能性があります。
Enterprise Managerのログアウト・アクションによってOracle Data Integratorコンソールが無効化されていないために、Oracle Data Integratorコンソールが作成するCookieによってこの問題が発生します。
回避方法は次のとおりです。
管理者は、ゲートウェイ経由のアクセス用に、Enterprise ManagerおよびOracle Data Integratorコンソールのサーバーを構成する必要があります。ゲートウェイによって、SSOにログインしていないユーザーがSSOログイン・ページに自動的にリダイレクトされます。
共有またはパブリック・コンピュータからOracle Data IntegratorコンソールまたはEnterprise Managerにアクセスしている場合は、ログアウトしてセッションを閉じます。さらにセキュリティを高めるために、ブラウザ・セッションを閉じます。
この項では、次の問題および回避方法について説明します。
41.4.5項「モデル・コードにASCII以外の文字が含まれる場合、一貫性セットJKMでサブスクライバの追加が失敗する」
41.4.6項「ASCII以外の文字の場合、IKMおよびLKM SQL Incremental Update (Row by Row)が失敗する」
41.4.8項「IKM SQL Incremental Update (Row by Row)では日本語の表をターゲットにできない」
Microsoft Excelをターゲットとして使用している場合、列名は大文字である必要があります。
[Microsoft][ODBC Excel Driver]COUNT field incorrect
これを解決するには、Microsoft Excel内の列名を変更します。
ODI Studio内では、新規列を既存のデータストアに対してリバース・エンジニアリングしているとき、リバース後に、次のメッセージに対して「いいえ」を選択すると新規列が自動的に保存されます: 「<datastore>は変更されています。変更を保存しますか。」
ODI Studio内では、複製モードでテクノロジをインポートしているとき、SQLキーワードがインポートされません。これを解決するには、SQLキーワードをテクノロジ・プロパティに手動で追加します。
インタフェースを実行し、XMLまたは複合ファイル・スキーマをステージング領域として使用する場合、「不明なトークン」エラーが表示されます。このエラーの原因は、更新されたHSQLバージョン(2.0)です。HSQLの新規バージョンでは、ドル記号($)が含まれる表名は引用符で囲む必要があります。ナレッジ・モジュールによって作成される一時表(「ロード中」、「統合」など)は、複合ファイルおよびHSQLテクノロジにおけるこの要件を満たしていません。
回避方法として、物理スキーマ定義を編集し、すべての作業表接頭辞からドル記号($)を削除してください。既存のシナリオは、これらの新規設定を使用して再生成する必要があります。
モデル・コードにASCII以外の文字が含まれる場合、一貫性セット・ジャーナル化KMでサブスクライバの追加が機能しません。これは、すべての一貫性セットJKMに当てはまります。セッションは正常に完了しますが、サブスクライバが追加されません。モデル・コードに排他的なASCII文字が含まれる場合、この問題は発生しません。
この時点で一般的な回避方法はありません。
ソース・データベースにASCII以外の文字が含まれる場合、IKMまたはLKM SQL Incremental Update (Row by Row)を使用するインタフェースがステップ「I$表へのフローの挿入」で失敗し、次のエラー・メッセージが表示されます。
org.apache.bsf.BSFException: exception from Jython: Traceback (most recent call last): File "<string>", line 149, in <module> UnicodeEncodeError: 'ascii' codec can't encode characters in position 6-7: ordinal not in range(128)
この時点で一般的な回避方法はありません。
別のマスターのエクスポートを使用して新しいマスター・リポジトリを作成する場合、マスター・リポジトリ・インポート・ウィザードの「JDBCドライバ」リストにPostgreSQLドライバが表示されません。
この時点で一般的な回避方法はありません。認証済プラットフォームの詳細は、次の場所にあるOracle Technology Network (OTN)から入手できる動作保証のドキュメントを参照してください:
http://www.oracle.com/technology/software/products/ias/files/fusion_certification.html
ターゲット表名に日本語の文字が含まれる場合、IKM SQL Incremental Update (Row by Row)がタスク「更新する行にフラグ設定」で失敗します。生成されたコード内では、統合表名が「I$_??????」として表示されます。「?」文字は日本語の文字と置き換わります。
回避方法として、このIKMをテクノロジに適した別のIKMに置き換えます。たとえば、Oracleの場合はIKM Oracle Incremental Updateに置き換えます。
この項では、次の問題および回避方法について説明します。
UNIXマシンにインストールされているData QualityサーバーにOracle Data Qualityクライアントから接続しようとすると、「クライアント・アプリケーション"Admin"バージョン"12.0.1"はサポートされていません。」というエラー・メッセージが表示されます。
この問題を解決するには、次の手順でメタベース定義を再インストールします。
UNIXサーバーでODQ_HOME/oracledi/odp/Client/SvrSide
ディレクトリに移動します。
./setup
を実行します。
プロンプトに従って、メタベース・インストールの場所としてODQ_HOME/oracledq/metabase_server/
を入力します。
メタベース管理ユーザーおよびパスワードを入力します。
メタベース定義のインストールが完了したら、ODQ_HOME/oracledq/metabase_server/metabase/bin/scheduler -restart
コマンドを使用して、スケジューラ・サービスを再起動します。
保存済.tssファイルをダブルクリックしてOracle Data Qualityクライアントを起動すると、クライアント・マシンのロケールとは関係なく、メニューが英語で表示されます。
回避方法として、ショートカット・メニューからクライアントを開いた後、.tssファイルを開きます。
エンティティの作成時に、ローダー接続の構成用にユーザーとパスワードの不正な組合せを入力すると、「エンティティの作成」ページに不正なメッセージが表示されます。
この時点でこの問題の回避方法はありません。
データ・クオリティ・プロジェクトのエクスポート先フォルダのパスにASCII以外の文字が含まれる場合、作成されるプロジェクト・フォルダ構造にファイルが含まれません。
回避方法として、ASCII以外の文字を含まないフォルダ・パスを使用します。