Имя: Пароль:
1C
1С v8
ЦУП 1.2.5.21 + MS SQL 2008 R2. Обработка deadlock.
0 Kvestin
 
05.01.13
10:25
Добрый день.

Бьюсь 2 дня - локализовал проблему. Дальше без помощи никак.
1. Есть 2 MS SQL Server 2008 R2 Ent(тестовый и боевой) которые ставились с одного дистрибутива с интервалом в 5 дней.
2. Поднимаю одну и ту же копию УТ 10.3 на одном и на другом (обе на одном и том же кластере)
3. Создаю deallock в одной и другой базе (отлавливаю его по трассировкам)
4. Закрываю мониторинг, провожу анализ.
5. Для одной базы ЦУП обрабатывает взаимоблокировку, на другом нет.

Залез к код ЦУП-а нашел, что различия возникают при разборе графа взаимоблокировок, который приходит со скуля (трассировка). При сравнении графа в текстовом файле я вижу различия только в различных ID - структура один   в один (могу выложить). Но почему-то в одном случае результат получается кривой и ЦУП его не обрабатывает (записывает в строку ТЗ после обработки "Недостаточно данных").

Понимаю что проблема именно со скулем (т.к. кластер один и тот же) - где копать не знаю.
1 Kvestin
 
05.01.13
11:03
И тишина ... Может я вопрос не так задал?
2 Kvestin
 
05.01.13
17:14
[РЕШЕНО]

Проблема была в запросе который сопоставляет данные журнала регистрации и трассировки SQL. Скорее всего в 2008 сервере изменился алгоритм отсчетов времени. Решил проблему локальным обновлением модуля по разбору взаимоблокировок (взял куски из ЦУП-а 8.2). Все заработало как надо.