До выполнения скрипта рекомпиляции было порядка 50 объектов-инвалидов, в том числе и объекты с префиксом AQ$.
Выполнил процедуру, вот ее лог:
SQL> @/opt/oracle/OraHome/rdbms/admin/utlrp.sql
Процедура PL/SQL успешно завершена.
Таблица создана.
Таблица создана.
Таблица создана.
Индекс создан.
Таблица создана.
Таблица создана.
Представление создано.
Представление создано.
Пакет создан.
Ошибок нет.
Тело пакета создано.
Ошибок нет.
Процедура PL/SQL успешно завершена.
Процедура PL/SQL успешно завершена.
Теперь этот запрос ничего не возвращает, значит всё скомпилено, как я понимаю.
Но ошибка не исчезла =\ правда немного модифицировалась. Теперь пишет , что ошибка на уровне 2, а была на уровне 1.
SQL> drop user mbill_test cascade;
drop user mbill_test cascade
*
ошибка в строке 1:
ORA-00604: ошибка на рекурсивном SQL-уровне 2
ORA-04068: существующее состояние пакетов было сброшено
ORA-04065: не выполнено, stored procedure "SYS.DBMS_STANDARD" изменено или
удалено
ORA-06508: PL/SQL: Невозможно найти вызываемый программный блок
ORA-06512: на "SYS.DICTIONARY_OBJ_TYPE", line 3
ORA-06512: на line 2
Сейчас попробую посмотреть что там на строке 3 в DICTIONARY_OBJ_TYPE