Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Евгений Недашковский Member Откуда: Сообщений: 14 |
Дамы и господа, прошу совета. Транзакционная репликация. Тип: Push. Дистрибютор выделенный, но сразу под несколько паблишеров. Проблема возникает уже не первый раз. При операциях апдейт (возможно и не только на них) - изменения не реплицируются на подписчике. Видим сугубо при сравнении результатов выборки. Агенты отрабатывают стабильно. Ошибок при просмотре через монитор нет. Количество транзакций в очереди - ноль. При осуществлении транзакции - в том же репликейшн мониторе видно, что она "ушла". В общем, мистика какая-то. Апдейты на стороне реплики осуществляются через XCALL хранимки. Хранимка прописана корректно. Посмотрел статистику выполнения хранимок: SELECT TOP 1000 d.object_id, d.database_id, OBJECT_NAME(object_id, database_id) 'proc name', d.cached_time, d.last_execution_time, d.total_elapsed_time, d.total_elapsed_time/d.execution_count AS [avg_elapsed_time], d.last_elapsed_time, d.execution_count FROM sys.dm_exec_procedure_stats AS d ORDER BY [total_worker_time] DESC Отобрал нужную. По дате - запускалась перед накатом последнего снапшота (4 дня назад). Очень странно, так как апдейты, по идее, идут постоянно. В итоге вылечилось повторным накатом снапшота. Но ситуация повторяется уже не в первый раз. Есть идеи в чём может быть причина? |
19 май 15, 13:05 [17660770] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8316 |
На дистрибуторе застряли. |
19 май 15, 14:31 [17661460] Ответить | Цитировать Сообщить модератору |
Евгений Недашковский Member Откуда: Сообщений: 14 |
Тогда бы "Number of commands in the distribution database waiting to be applied to this Subscriber" не было бы равно нулю. |
||
19 май 15, 14:35 [17661501] Ответить | Цитировать Сообщить модератору |
invm Member Откуда: Москва Сообщений: 9633 |
Постфактум уже ничего не выяснить. Когда проблема опять возникнет: 1. Убедиться, что транзакции попадают в БД дистрибьютора. 2. Включить подробное журналирование у дистрибьюшн-агента и анализировать происходящее. |
19 май 15, 14:39 [17661541] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |