17июн
DROP USER . ORA-00604: error occurred at recursive SQL level 1 ORA-00942: table or view does not exist
На одном из подопечных серверов нужно было удалить пользователя. Но на команду DROP USER my_user cascade было получено сообщение: «ORA-00604: error occurred at recursive SQL level 1 ORA-00942: table or view does not exist».
Ничего лучшего не могли придумать, как только получить файл трассировки:
alter session set sql_trace=true;
DROP USER my_user cascade;
Снова получаем ошибку:
ORA-00604: error occurred at recursive SQL level 1 ORA-00942: table or view does not exist
Но теперь имеем файл трассировки. В нем находим :
PARSE ERROR #15:len=78 dep=1 uid=0 oct=7 lid=0 tim=677704568731 err=942
delete from system.aq$_internet_agent_privs WHERE db_username = NLS_UPPER(:1)
EXEC #1:c=1203125,e=19331497,p=60,cr=902,cu=0,mis=0,r=0,dep=0,og=4,tim=677704635416
ERROR #1:err=604 tim=67771625
STAT #2 id=1 cnt=0 pid=0 pos=1 obj=3475 op='TABLE ACCESS FULL OBJ#(3475) '
Как оказалось, таблички system.aq$_internet_agent_privs как раз и не было в этой базе данных.
Вывод:
Файл трассировки - это хорошо!