Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
Добрый день.

Подскажите пожалуйста, как можно побороть данную ситуацию:
Есть программа, которая создает псевдовременные таблицы для временного использования, например для хранения данных на время подготовки отчетов. Таблица создается при запуске отчета и удаляется при его закрытии.
Это приводит к тому что, при запуске плана обслуживания для пересчета индексов эта таблица существует, а при выполнении команды ALTER INDEX... её уже нет. В результате получаем ошибку:
Executing the query "ALTER INDEX [ORWA017EA3AEE490B94869901DEE4B3C788C1..." 
failed with the following error: "Cannot find the object "dbo.ORWA017EA3AEE490B94869901DEE4B3C788C130002018E" 
because it does not exist or you do not have permissions.". 
Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.

И прекращается обработка дальнейших индексов. Как можно исключить перестройку индексов для подобных таблиц?
Переписать программу мы не можем, закрытый код и мы не разработчики.
19 янв 16, 10:23    [18699823]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
нарисовать свой джоб для перестроения индексов
19 янв 16, 10:34    [18699882]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
Владимир Меньшиков, не выполнять перестройку индексов в момент формирования отчетов, например.
19 янв 16, 10:47    [18699947]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
Благодарю всех откликнувшихся.
19 янв 16, 13:17    [18700905]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
Maxx
нарисовать свой джоб для перестроения индексов
Или взять готовое нормальное бесплатное решение.
SQL Server Index and Statistics Maintenance by Ola Hallengren
19 янв 16, 22:21    [18703436]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
Владимир Меньшиков
Добрый день.

Подскажите пожалуйста, как можно побороть данную ситуацию:
Есть программа, которая создает псевдовременные таблицы для временного использования, например для хранения данных на время подготовки отчетов. Таблица создается при запуске отчета и удаляется при его закрытии.
Это приводит к тому что, при запуске плана обслуживания для пересчета индексов эта таблица существует, а при выполнении команды ALTER INDEX... её уже нет. В результате получаем ошибку:
Executing the query "ALTER INDEX [ORWA017EA3AEE490B94869901DEE4B3C788C1..." 
failed with the following error: "Cannot find the object "dbo.ORWA017EA3AEE490B94869901DEE4B3C788C130002018E" 
because it does not exist or you do not have permissions.". 
Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.

И прекращается обработка дальнейших индексов. Как можно исключить перестройку индексов для подобных таблиц?
Переписать программу мы не можем, закрытый код и мы не разработчики.

Запустили ночью, когда никто не работает, ошибка та же, со ссылкой на псевдовременную таблицу. Таблицы с таким индексом нет yb в sys.objects, ни в списке таблиц в MS SSMS, индекса с таким индексом так же нет в sys.indexes. Где может находиться информация об этом индексе, и как её сделать актуальной?
20 янв 16, 14:15    [18706035]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8350
закрытый код и мы не разработчики


Правильное решение - обратиться к авторам кода.
20 янв 16, 14:34    [18706143]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
Владислав Колосов
закрытый код и мы не разработчики


Правильное решение - обратиться к авторам кода.

Это, как выяснилось проблема SQLServer'а. Таблицы с индексом уже нет, но при перестроении индексов SQL откуда-то вытаскивает эту информацию.
20 янв 16, 14:59    [18706297]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
invm
Member

Откуда: Москва
Сообщений: 9646
Владимир Меньшиков
Это, как выяснилось проблема SQLServer'а. Таблицы с индексом уже нет, но при перестроении индексов SQL откуда-то вытаскивает эту информацию.
Это проблема авторов программы - использовать постоянные таблицы в качестве временных.

А происходит у вас вот что - на момент получения списка таблиц планом обслуживания таблица есть, а на момент запуска перестроения индексов для этой таблицы ее уже нет.
20 янв 16, 15:16    [18706419]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
invm
Владимир Меньшиков
Это, как выяснилось проблема SQLServer'а. Таблицы с индексом уже нет, но при перестроении индексов SQL откуда-то вытаскивает эту информацию.
Это проблема авторов программы - использовать постоянные таблицы в качестве временных.

А происходит у вас вот что - на момент получения списка таблиц планом обслуживания таблица есть, а на момент запуска перестроения индексов для этой таблицы ее уже нет.

У меня происходит то, что таблицы уже давно не было, проверял вчера около 12 часов по Москве. При запуске перестройки индексов сегодня в 7:00, спустя более 19 часов после проверки, выдается сообщение об ошибке на этот же самый индекс, этой же самой таблицы. Ни в sys.objects, ни в sys.indexes ни этой таблицы, ни этих индексов не было уже вчера. Откуда еще может браться список индексов для их перестройки?
20 янв 16, 16:12    [18706861]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Glory
Member

Откуда:
Сообщений: 104751
Владимир Меньшиков
Откуда еще может браться список индексов для их перестройки?

Из другой базы. Не той, где вы проверяли "Ни в sys.objects, ни в sys.indexes"
20 янв 16, 16:23    [18706930]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
Glory,

А как тогда вылезает эта ошибка при перестройке индексов именно на этой, а не другой, базе данных? Запускал перестройку для одной конкретной базы.
20 янв 16, 17:16    [18707280]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Glory
Member

Откуда:
Сообщений: 104751
Владимир Меньшиков
А как тогда вылезает эта ошибка при перестройке индексов именно на этой, а не другой, базе данных?

Для этого как раз и используют Профайлер. Чтобы точно знать чтоже там приложение выполняет на сервере
20 янв 16, 17:46    [18707498]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
Glory
Для этого как раз и используют Профайлер. Чтобы точно знать чтоже там приложение выполняет на сервере

Создал "проблемную" таблицу и индекс и перестройка индексов прошла успешно.
21 янв 16, 10:38    [18709248]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Glory
Member

Откуда:
Сообщений: 104751
Владимир Меньшиков
Создал "проблемную" таблицу и индекс и перестройка индексов прошла успешно.

А этот план обслуживания вы лично создавали ?
Если не вы, то вы хотя бы открывали его для выяснения, что же за шаги есть в этом плане ?
21 янв 16, 10:41    [18709261]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при выполнении плана по переиндексации.  [new]
Владимир Меньшиков
Member

Откуда: Санкт-Петербург
Сообщений: 68
Glory,
Создавал сам с помощью мастера плана обслуживания.
Шаги:
1. Реорганизация индекса
2. Восстановление индекса
3. Обновление статистики

Все шаги для одной базы данных.
21 янв 16, 11:38    [18709624]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить