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

Откуда: Минск
Сообщений: 1838
Добрый день.
Стала медленно работать репликация слиянием. Скриншот в приложении. Блокировок на издателе не было. т.к. остальные подписки работали ок.
Проблема на скриншоте проявлялась и на других подписках но в другое время.
В чем может быть проблема? Есть некоторые подозрения, но хотелось бы услышать ваше мнение.
В качестве физического носителя используется HP Eva. Перешли недавно.
Версия сервера Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64) Jun 28 2012 08:36:30 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor)
5 мар 13, 10:19    [14012395]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
Скриншот.

К сообщению приложен файл. Размер - 142Kb
5 мар 13, 10:20    [14012403]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
dalex1973
Member

Откуда: Польша
Сообщений: 287
Чтобы не гадать на кофейной гуще, настройте запись событий репликации в лог и посмотрите. Навскидку - триггер на подписчике откатывает транзакцию без ошибки.
5 мар 13, 11:53    [14013191]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
dalex1973,

Прошу простить за неграмотность, но не могу найти как записывать события репликации в лог.
5 мар 13, 14:10    [14014455]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
Истори агента показывает только это:
Message
=============================================================

Article Upload Statistics:
============================

Exch_Base:
Inserts: 2252
Relative Cost: 0.08%

Exch_Postavka:
Inserts: 177
Relative Cost: 0.02%

Exch_Postavka_dop:
Inserts: 177
Relative Cost: 0.01%

Exch_TTN:
Inserts: 121
Rows Retried: 100
Relative Cost: 99.89%

Article Download Statistics:
============================

Exch_Base:
Relative Cost: 31.00%

Exch_Postavka:
Updates: 37
Relative Cost: 38.87%

Exch_Postavka_dop:
Relative Cost: 10.70%

Exch_TTN:
Updates: 37
Relative Cost: 19.43%

Session Statistics:
============================
Upload Inserts: 2727
Upload Rows Retried: 100
Download Updates: 74

Change Delivery Time: 2539 sec
Schema Change and Bulk Insert Time: 0 sec
Delivery Rate: 1.10 rows/sec
Total Session Duration: 2541 sec
5 мар 13, 14:36    [14014690]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
dalex1973
Member

Откуда: Польша
Сообщений: 287
X-Cite,

http://support.microsoft.com/kb/312292
6 мар 13, 10:54    [14018240]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
Путем проб и ошибок нашел вот что.
Есть фильтр 3 уровня, если репликация загонит данные 2 и 3 уровня раньше чем 1, то репликация зависает намертво на триггере на вставку.
Есть какой нибудь фикс этого бага?
7 мар 13, 11:57    [14023887]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
dalex1973,
Настроил лог, получил следующее.
Репликация использует следующий фильтр.

Когда был 2005 издатель/дистрибутор, все было ок. Работало не тормозило.
Сейчас Издатель/дистрибутор Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64), подписчик 2005 так и остался.
Падает на вот этом и зависает Error messages:
The merge process could not update the last sent generation sent to the Publisher. If this failure persists, reinitialize the subscription. (Source: MSSQL_REPL, Error number: MSSQL_REPL-2147201005)

Не могу понять куда смотреть и что пробовать?

К сообщению приложен файл (pack.zip - 53Kb) cкачать
18 мар 13, 16:11    [14063235]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
По проблеме в текстовом файле нашел это
http://support.microsoft.com/kb/953568/en-us?fr=1
Но у нас 2005 сервер такие:
Microsoft SQL Server 2005 - 9.00.3257.00 (X64)
Microsoft SQL Server 2005 - 9.00.4035.00 (X64)

А судя по всему этот хотфикс входит уже в 9.00.3257.00

Я сделал как сказано во временном решении и все ок стало работать за пару сек.

Возможно проблема описанная мной вначале по долгой вставке на издателя в том же?
18 мар 13, 17:19    [14063679]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
invm
Member

Откуда: Москва
Сообщений: 9827
У вас там полно ошибок "The merge process failed to execute a query because the query timed out"...
18 мар 13, 17:44    [14063829]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
dalex1973
Member

Откуда: Польша
Сообщений: 287
X-Cite

Возможно проблема описанная мной вначале по долгой вставке на издателя в том же?

У Вас на скриншоте Retries = 74. Вот откуда задержка. Причину Вы определили сами (баг).
19 мар 13, 11:44    [14066265]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
Но как получается, если версия сервера Microsoft SQL Server 2005 - 9.00.3257.00 (X64)
А это, если верить этому блогу http://sqlserverbuilds.blogspot.in/ как раз таки 951217 Cumulative update package 8 (CU8) for SQL Server 2005 Service Pack 2
А фикс этот входит в этот CU8.
При этом запустив фикс на тестовом x86 он попытался установиться, но с ошибкой, ошибку буду потом разбирать (видимо из-за прав доступа).
19 мар 13, 17:56    [14069014]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
dalex1973
Member

Откуда: Польша
Сообщений: 287
X-Cite,

Остаётся предположить что фикс вашу проблему не исправил , зато обходной манёвр удался.
20 мар 13, 16:38    [14073130]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
ну как помогло. На 2 дня помогло, потом опять то же самое.
20 мар 13, 18:48    [14073889]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
dalex1973
Member

Откуда: Польша
Сообщений: 287
X-Cite
ну как помогло. На 2 дня помогло, потом опять то же самое.

Напишите джоб который будет искать "подозрительные записи" (из терминологии статьи) и рестартовать репликацию с "generation_leveling_threshold".
21 мар 13, 10:36    [14075895]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
А может кто объяснить смысл параметра generation_leveling_threshold.
Как сказывается его уменьшение или увеличение на работе репликации?
22 мар 13, 09:59    [14080319]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
invm
Member

Откуда: Москва
Сообщений: 9827
X-Cite
А может кто объяснить смысл параметра generation_leveling_threshold.
Как сказывается его уменьшение или увеличение на работе репликации?
http://blogs.msdn.com/b/repltalk/archive/2011/04/24/reducing-impact-of-large-updates-on-merge-replication.aspx

Либо уменьшите для публикации generation_leveling_threshold, либо увеличьте query timeout в профиле агента.
22 мар 13, 10:44    [14080657]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
invm,

Для одной из публикаций, где в период с 17:00 по 22:00 интенсивно перегоняются данные, при том по одному значению фильтра данные уходят на несколько серверов. При стандартном значении в 1000 происходили зависания при применении на подписчика изменений. Выставил в 0. Перестали зависать на 4 часа, но все равно перенос 3000 Insert'ов за 3-10 минут это много. По сравнению другие публикации даже с более многоуровневым фильтром отрабатывают за несколько секунд.
22 мар 13, 11:19    [14080904]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
invm
Member

Откуда: Москва
Сообщений: 9827
X-Cite,

Ну так отпрофилируйте эти 3000 инсертов и выясните причину задержки.
22 мар 13, 11:38    [14081037]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
Proga
Member

Откуда: МО
Сообщений: 3042
invm
X-Cite,

Ну так отпрофилируйте эти 3000 инсертов и выясните причину задержки.

не получится у него это сделать. я так понял там у него там многоуровневый фильтр.
В этом случае поможет только одно, изменение периода хранения изменений в поколениях данных.
22 мар 13, 12:24    [14081448]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
Proga
Member

Откуда: МО
Сообщений: 3042
я в этом говне, под названием репликация(мердж) баз данных уже много варюсь, спасает только, реализация своей собственной синхронизации, в этом году по планам буду реализовывать.
Ещё раз синхронизация мердж от MS - говно.
Есть конкретные факты.
Но чтобы хоть как-то поднять настроение автору треда, добавлю, что вам надо прочитать вот это, немного поможет.
Плюс оценить размер таблиц MSmerge_current_partition_mappings и MSmerge_past_partition_mappings, если данных много, то бороться так sp_mergemetadataretentioncleanup
22 мар 13, 12:42    [14081576]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
Proga,

6.000.000 и 300.000 записей на издателе в них.

На всех публикациях стоит 14 дней. Некоторые подписчики обновляют данные каждый день, а некоторые могут и 1 раз в 10 дней.
Как я понял sp_mergemetadataretentioncleanup чистит исходя из даты в 14 дней или она сама решает что чистить?
22 мар 13, 14:00    [14082303]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
Proga
Member

Откуда: МО
Сообщений: 3042
Она сама чистит устаревшие на 14 дней в момент синхронизации данных.
Ваш объём очень мал, это точно не в этом, хотя ребилд индексов системных таблиц репликации никто не отменял.
Рекомендую это делать по ночам. Уник.ид. очень любит убивать фрагментацию.
Вам надо искать узкие места в системе. Крайне поможет анализ наличия нужных индексов или их излишек.
Ваш поток данных для репликации слишком мал. Я за день прокачиваю около 20млн. строк по серверам.
22 мар 13, 16:53    [14083619]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
Будем думать, спасибо.
80% в этой таблице - это новая публикация с марта месяца, вот тогда у нас и начались тормоза.
Правда в феврале мы перевели всех издателей на 2008 сервер SP2 без CU. Возможно и это сыграло роль, т.к. есть публикация в отдельных БД на отдельном издаителе и дистрибюторе, которая на 2005-ых серверах работала без проблем. А сейчас она тормозит ужасно, до 4 часов выполняется при этом вообще нет никаких изменений. Вот фильтр у нее жестокий, около 20 таблиц до 4 уровня вложенности. Однако повторюсь, что на 2005 системе работала без проблем.
22 мар 13, 18:25    [14084056]     Ответить | Цитировать Сообщить модератору
 Re: Медленно работает репликация слиянием  [new]
X-Cite
Member

Откуда: Минск
Сообщений: 1838
Есть еще вопрос к вам.
Мы решили опробовать использовать табличную фильтрацию данных, .т.е. если надо по фильтру пустить другие данные, чтобы не производить реинициализацию.
Пример:
Создали таблицу ReplFilterPublication1 ([ServerName] SYSNAME, [DBName] SYSNAME, Id INT)
и гоняем ее в публикации.
В таблице находятся записи вида:
Сервер1, БД1, 1
Сервер1, БД1, 1
Сервер1, БД1, 1
Сервер1, БД1, 1
22 мар 13, 18:29    [14084066]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить