Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Unexpected error during execution. / 3 сообщений из 3, страница 1 из 1
24.05.2002, 03:50:06
    #32031170
olegusan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Unexpected error during execution.
Коллеги,

Возникла проблема (а может она всегда была)

Точнее проблемы 2:

1.При выполнении хранимой процедуры из DTS пакета в процедуре возникает ощибка, однако SQL Task завершается с признаком Success. Почему?

2. Сама ошибка тоже странная. Возникает она не всегда (1 раз на 5-6 запусков) и без заметной закономерности.
При запуске кода хранимки в QA, сообщение об ошибке выглядит вот так:

Server: Msg 8630, Level 17, State 98, Line 712
Internal Query Processor Error: The query processor encountered an unexpected error during execution.

В строке 712 ничего нет.
Зато следуюшая строка содержит огромный запрос

UPDATE ExtractContents
SET STAGE8ESTENDDATE = CFI_StartDate + CFI_ExpectedDuration + UWZ_ExpectedDuration + ASB_ExpectedDuration,
STAGE8ACTENDDATE = UWZ_CompletionDate
FROM ExtractContents Inner JOIN
(Select CFI_ProjectID, CFI_ReworkSeq, CFI_ProjectTypeCode, CFI_TaskTypeCode, CFI_StartDate, CFI_ExpectedDuration, ASB_TaskTypeCode, ASB_ExpectedDuration, UWZ_ProjectTypeCode, UWZ_ExpectedDuration, UWZ_CompletionDate
FROM (Select E.ProjectID as CFI_ProjectID, PT.ReworkSeq as CFI_ReworkSeq, Pro.ProjectTypeCode as CFI_ProjectTypeCode, TT.TaskTypeCode as CFI_TaskTypeCode, PT.StartDate as CFI_StartDate, PT.ExpectedDuration as CFI_ExpectedDuration
FROM ExtractContents E INNER JOIN Project Pro ON E.ProjectID = Pro.ProjectID
INNER JOIN ProjectType ProType ON E.ProjectTypeCode = ProType.ProjectTypeCode
INNER JOIN ProjectTask PT ON E.ProjectID = PT.ProjectID AND E.REWORKNUMBER = PT.ReworkSeq
INNER JOIN ProjectTypeTask TT ON E.ProjectTypeCode = TT.ProjectTypeCode AND PT.TaskSeq = TT.TaskSeq
WHERE Pro.ProjectTypeCode = 'MPEB' AND TT.TaskTypeCode = 'CFI'/* AND E.STAGE8ACTENDDATE IS NOT NULL*/) CFI,
(Select E.ProjectID as ASB_ProjectID, PT.ReworkSeq as ASB_ReworkSeq, Pro.ProjectTypeCode as ASB_ProjectTypeCode, TT.TaskTypeCode as ASB_TaskTypeCode, PT.ExpectedDuration as ASB_ExpectedDuration
FROM ExtractContents E INNER JOIN Project Pro ON E.ProjectID = Pro.ProjectID
INNER JOIN ProjectType ProType ON E.ProjectTypeCode = ProType.ProjectTypeCode
INNER JOIN ProjectTask PT ON E.ProjectID = PT.ProjectID AND E.REWORKNUMBER = PT.ReworkSeq
INNER JOIN ProjectTypeTask TT ON E.ProjectTypeCode = TT.ProjectTypeCode AND PT.TaskSeq = TT.TaskSeq
WHERE Pro.ProjectTypeCode = 'MPEB' AND TT.TaskTypeCode = 'ASB'/* AND E.STAGE8ACTENDDATE IS NOT NULL*/) ASB,
(Select E.ProjectID as UWZ_ProjectID, PT.ReworkSeq as UWZ_ReworkSeq, Pro.ProjectTypeCode as UWZ_ProjectTypeCode, TT.TaskTypeCode as UWZ_TaskTypeCode, PT.ExpectedDuration as UWZ_ExpectedDuration, PT.CompletionDate as UWZ_CompletionDate
FROM ExtractContents E INNER JOIN Project Pro ON E.ProjectID = Pro.ProjectID
INNER JOIN ProjectType ProType ON E.ProjectTypeCode = ProType.ProjectTypeCode
INNER JOIN ProjectTask PT ON E.ProjectID = PT.ProjectID AND E.REWORKNUMBER = PT.ReworkSeq
INNER JOIN ProjectTypeTask TT ON E.ProjectTypeCode = TT.ProjectTypeCode AND PT.TaskSeq = TT.TaskSeq
WHERE Pro.ProjectTypeCode = 'MPEB' AND TT.TaskTypeCode = 'UWZ'/* AND E.STAGE8ACTENDDATE IS NOT NULL*/)UWZ
WHERE CFI_ProjectID = ASB_ProjectID
AND CFI_ReworkSeq = ASB_ReworkSeq
AND CFI_ProjectTypeCode = ASB_ProjectTypeCode
AND CFI_ProjectID = UWZ_ProjectID
AND CFI_ReworkSeq = UWZ_ReworkSeq
AND CFI_ProjectTypeCode = UWZ_ProjectTypeCode
) as TempTask ON PROJECTID = CFI_ProjectID AND REWORKNUMBER = CFI_ReworkSeq AND PROJECTTYPECODE = CFI_ProjectTypeCode
WHERE ProjectTypeCode = 'MPEB'
AND STAGE8STARTDATE IS NOT NULL


Вот такие дела
...
Рейтинг: 0 / 0
24.05.2002, 04:29:16
    #32031171
olegusan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Unexpected error during execution.
Забыл уточнить:
Сервер SQL7+SP3

Вообще проблема 2 похожа на проблемы описанные в

http://support.microsoft.com/default.aspx?scid=kb;en-us;Q258198
FIX: Error Message 8630 Occurs When Updates are Performed to a Table with Compound Keys (Q25819

и

http://support.microsoft.com/search/preview.aspx?scid=kb;en-us;Q289149
FIX: A Query That Uses Hash Match Teams May Fail with 8630 Error Message (Q289149)

Но в первом случае утверждается, что проблема существует только для SQL2000, а во втором, - что проблема исправлена в SP3
...
Рейтинг: 0 / 0
24.05.2002, 06:43:50
    #32031186
Dankov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Unexpected error during execution.
Олег, описанная тобой проблема, увы, типична для семерки. Проблема заключается в слабости оптимизитора, не способного в какие-то недетерминированные моменты переварить слишком сложный запрос. Зато решение простое - надо сей могучий запрос переписать в несколько простых со сливом промежуточных данных во временные таблички. Можно это все засунуть в одну хранимку или в несколько с иерархическими вызовами. Кстати, есть большая вероятность, что при разбиении могучего запроса на несколько мелких через вр. таблички, увеличится конкретно производительность.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Unexpected error during execution. / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]