April 20 2024 13:34:38
Активаторы
         

         

          
· Новостей: 37
· Статей: 93
· Файлов: 52
· Изображений: 0
· Ссылок: 0
· Темы форума: 0
· Сообщений на форуме: 0
· Пользователей: 1549
· Комментарии: 507

Иерархия статей

Статьи » Мои статьи » База с паранормальными явлениями
База с паранормальными явлениями

На днях дали базу 1С:ERP на анализ. Симптомы - все тормозит. Открытие конфигуратора (примерно 1,5 часа), клиента, переходы по навигационным ссылкам - все. Остальные базы в кластере работают нормально, в том числе и другая ERP, а с этой непонятная беда. Чистка кэша, тестирование/исправление, DBCC CHECKDB, разворачивание из SQL бэкапа в чистую базу, выгрузка/загрузка .dt, пересоздание базы в кластере, какие-то еще шаманства - ничего не помогает.

Ок, развернул базу, решил посмотреть в SQL Profiler, какие запросы выполняются при запуске базы. Внимание привлекло следующее поведение. После каждого служебного запроса к таблице Config

exec sp_executesql N'SELECT Creation,Modified,Attributes,DataSize,BinaryData FROM Config WHERE FileName = @P1 ORDER BY PartNo',N'@P1 nvarchar(128)',N'086d69d6-e2fa-45cb-84b6-f8f3e2919160' 

дополнительно выполняется

exec sp_executesql N'SELECT FileName,Creation,Modified,Attributes,DataSize FROM Config WHERE PartNo = 0 and FileName LIKE @P1',N'@P1 nvarchar(128)',N'_____________________________________dynupdate_%'

Проверка на нормально работающей базе показала отсутствие запросов с таким параметром. То есть можно предположить, что процесс динамического обновления конфигурации некорректно отработал и где-то в базе записана информация, наличие которой приводит к появлению этих дополнительных запросов. Ближе к началу трассировки были обнаружены следующие строки, из контекста которых можно предположить,что они как-то связаны с динамическим обновлением:

exec sp_executesql N'SELECT Creation,Modified,Attributes,DataSize,BinaryData FROM Params WHERE FileName = @P1 ORDER BY PartNo',N'@P1 nvarchar(128)',N'DynamicallyUpdated' 

exec sp_executesql N'SELECT FileName,Creation,Modified,Attributes,DataSize FROM Config WHERE PartNo = 0 and FileName = @P1',N'@P1 nvarchar(128)',N'DynamicallyUpdated'

Выполнение этих запросов в эталонной базе показало отсутствие подходящих записей, в проблемной базе было выявлено наличие данных.

Select * FROM Config WHERE FileName like 'DynamicallyUpdated';
Select * FROM Params WHERE FileName like 'DynamicallyUpdated';


Далее  в проблемной базе было выполнен скрипт:

Delete FROM Config WHERE FileName like 'DynamicallyUpdated';
Delete FROM Params WHERE FileName like 'DynamicallyUpdated';
 

Рейтинг

Нет опубликованных рейтингов.

Рейтинг доступны только для пользователей.
Пожалуйста, авторизуйтесь или зарегистрируйтесь для голосования.


Авторизация
Логин

Пароль




Забыли пароль?
Запросите новый здесь.
4,108,741 уникальных посетителей