OracleSQLDeveloperで異常な問題に直面しています。ストアドプロシージャをコンパイルしようとすると、Oracle SQL DEveloper画面がハングし、SQL開発者インスタンスを強制終了して再起動する以外のアクティビティを実行できません。
しかし、同じ問題。誰かがそのような問題に直面しましたか?オラクルは初めてです。
ここで、問題へのいくつかの追加を5〜10分待って、このエラーが発生しました
ORA-04021 timeout occurred while waiting to lock object
しかし、Oracleのこのインスタンスに取り組んでいるのは私だけです
強制終了したプロシージャを作成するための以前の試みの1つは、まだスタックしていてアクティブです。 http://www.Oracle-base.com/articles/misc/KillingOracleSessions.php を使用してそのOracleセッションを強制終了する必要があります
このエラーのもう1つの原因は、データベース内の別のプロセスが、コンパイルしようとしているときにプロシージャを実行していることです。このクエリを使用して、実行中のプロセスを特定します。
select sess.sid, sess.username, sql_text
from v$sqlarea sqlarea, v$session sess
where sess.sql_hash_value = sqlarea.hash_value
and sess.sql_address = sqlarea.address
and sess.username is not null;
クエリv$locked_object
現在ロックされているオブジェクトが、ストアドプロシージャによって使用されているかどうかを確認します。その場合は、ロックされているクエリ/モジュールを追跡し、クエリを終了します。
トーマスによって与えられたリンクは、セッションが殺されたら、セッションを殺す方法の詳細を提供します&v$locked_object
レコードが表示されないため、正常にコンパイルできるはずです。