|
|
|
новичок
      
участник
Last Login: 17.01.2002 10:28
Сообщ.: 4,
Visits: 45
|
|
Натолкнулся на такую вот ошибку. Возникает при попытке выполнить запрос.
ORA-04028 cannot generate diana for object stringstringstringstringstring Cause: Cannot generate diana for an object because of lock conflict. Action: Report this error to your support representative.
|
|
|
|
|
Forum Guru
      
участник
Last Login: 17.04.2003 15:55
Сообщ.: 69,
Visits: 760
|
|
|
|
|
|
новичок
      
участник
Last Login: 17.01.2002 10:28
Сообщ.: 4,
Visits: 45
|
|
И так сразу оговорюсь, что попрыгав с "бубном" некоторое время вокруг компьютера, я вроде бы избавился от этой ошибки, но все равно ясности нет. Вот подробное описание проблемы, может кого заинтересует или кто-то знает научное объяснение возникновения проблемы.
У нас на одном сервере крутятся три базы: разработочная, тестовая и эталонная (сделаная по дампу от заказчика). Oracle 7.3.4. (только не надо говорить что нужно переходить на др версию, сами уже давно заказчика уламываем). И так буквально два дня назад, мы оновили все три базы по дампу от заказчика. И почему-то такая ошибка появилась только на разработочной. :о( лится все на таком запросе
Select S.ID, ZPL_CALCSUMM(S.ID) from (Select DISTINCT a.ID from ZPL_VAGENT a, ZPL_C_VMINUS c where a.ID= c.ID and a.ID not in (Select C.CRE_ID from CREDITORS C, CREDITORS_HIST CH where C.ID = CH.ID and P_OPERDAY between CH.FROMDATE and CH.TODATE and C.CODE = GetParamByName('AXD_CRE_SALARY')) ) S;
Внутри функции есть запрос который использует вьюху ZPL_C_VMINUS, связь между вьюхами следующая ZPL_C_VMINUS -> ZPL_VAGENT -> ZPL_VKONTRAGENT Вылечилось все как я уже говорил выше довольно шаманским способом: я в запросе вместо ZPL_C_VMINUS подставил, собсвенно говоря, текст запроса из которого эта вьюха и образована.
|
|
|
|
|
новичок
      
участник
Last Login: 17.01.2002 10:28
Сообщ.: 4,
Visits: 45
|
|
Блин имя функции забыл скопировать "Внутри функции есть запрос" надо чтать как "Внутри функции ZPL_CALCSUMM есть запрос"
|
|
|
|