My Oracle Support Banner

OID 11.1.1.7 パッチセット(PS6)適用に伴うODSスキーマに対する PSA 実行後、OIDADPSWD パッケージが INVALID になる (Doc ID 2149503.1)

Last updated on OCTOBER 31, 2019

適用範囲:

Oracle Internet Directory - バージョン 11.1.1.7.0 以降
この文書の内容はすべてのプラットフォームに適用されます。

現象

Oracle Internet Directory (OID) 10gAS インスタンスをアップグレードしています。この環境は PL/SQLによる外部認証プラグインを利用していました。
アップグレードに伴って新しい Java ベースのプラグインを作成、利用するようにし、これらは既に稼働しています。このため、10g で利用していた PL/SQLのプラグインは今後使う事はありません。

しかしながら、以下のマニュアルに従ってOID 11.1.1.7 を適用している時:

Oracle Fusion Middleware パッチ適用ガイド 11g リリース 1 (11.1.1.7.0) (B61412-06)
  4 パッチ・セット・アシスタンスによるスキーマの更新
    4.4.4 無効なデータベース・オブジェクトの確認

このステップで、パッケージ ODS.OIDADPSWD が無効(INVALID)となり、コンパイルすることもできません。

dba_errors ログを確認したところ、ODS.LDAP_PLUGINパッケージのget_adupname 関数を呼び出している2箇所でコンパイルに失敗していることが確認できました。

11.1.1.7 アップグレードでインストールされた新しいODS.LDAP_PLUGIN パッケージに問題があるように見えます。以前のODS.LDAP_PLUGINパッケージ、つまり 11.1.1.6 のものでは、必要な関数が定義されていました。
つまり、LDAP_PLUGIN パッケージのコードが変更されたように見えます。11.1.1.7 にアップグレードされたOID環境で Patch Set Assistant (PSA) を実行すると、これらいくつかの関数が削除されています。11.1.1.6 のOIDで構成されているテスト環境を確認したところ、このバージョンではOIDADPSWD から呼び出される関数を持っています。実際、11.1.1.6のOIDでの該当のコードは、10.1.2.3 のOID環境にあるものと一致しています。これらの状況から、11.1.1.7においてパッケージが変更されたものと考えられます。

現在は、Javaベースのプラグインを利用しており、該当のPL/SQLプロシージャは実際には使っていないため、パッケージ検証を無視することでそのまま利用していますが、この対処で正しいですか?

変更点

11.1.1.7 へのアップグレードで発生しました。

原因

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


本書の内容
現象
変更点
原因
解決策
参照情報

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.