ablog

不器用で落着きのない技術者のメモ

ORA-04028: オブジェクトstringstringstringstringstringのダイアナを生成できません。

ORA-04028: オブジェクトstringstringstringstringstringのダイアナを生成できません。
原因: ロックが競合しているため、オブジェクトにダイアナを生成できません。
処置: このエラーをOracleサポート・サービスに連絡してください。

ORA-02140からORA-04099

ダイアナって誰?

PL/SQLプログラミング言語Adaをベースにしています。したがってPL/SQLでは、ツリー構造の中間言語、DIANA(Descriptive Intermediate Attributed Notation for Ada)を使用しています。この中間言語は、インタフェース定義言語(IDL)と呼ばれるメタ表記を使用して定義されます。DIANAは、コンパイラなどのツールによって内部的に使用されます。
PL/SQLのソース・テキストはコンパイル時にシステム・コードに変換されます。サブプログラムまたはパッケージのDIANAおよびシステム・コードは、データベースに格納されます。実行時、それらは共有メモリー・プール内にロードされます。DIANAは依存サブプログラムのコンパイルに使用され、システム・コードはそのまま実行されます。

PL/SQLのプログラム上の制限

内部的に使われる中間言語らしい。