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

Откуда: Москва
Сообщений: 801
Столкнулся с ситуацией, в которой наверное виноват сам. Принудительная репликация слиянием Издатель - SQL SERVER 2008 Подписчики - один SQL SERVER 2008, другой - SQL SERVER 2000. На издателе сегодня нашел таблицу, включенную в репликацию с малозначащими техническими данными, но размер которой меня не порадовал - 900000 строк. Взял их и удалил (на подписчиках тоже). В настройках статей репликации выделяемые диапазоны идентификаторов - по 10000. После этого перестала идти репликация с сообщением, вынесенным в заголовок. Как выбраться из этой ситуации без реинициализации подписок? Не в диапазонах ли тут дело? Может как-то можно почистить метаданные по поводу удаления этих строк?
24 апр 15, 21:56    [17561367]     Ответить | Цитировать Сообщить модератору
 Re: процессу слияния не удалось создать новое поколение на Publisher  [new]
garvy
Member

Откуда: Москва
Сообщений: 801
Издатель
Microsoft SQL Server 2008 (SP2) - 10.0.4000.0 (X64) Sep 16 2010 19:43:16 Copyright (c) 1988-2008 Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
Подписчик
Microsoft SQL Server 2008 (SP2) - 10.0.4064.0 (X64) Feb 25 2011 13:56:11 Copyright (c) 1988-2008 Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.0 <X64> (Build 6002: Service Pack 2)

В итоге пошел на полное пересоздание подписки - в итоге уперся в тот же факт - дело доходит до процедуры sys.sp_MSmakegeneration ;1 - а дальше какой то висяк, который в итоге оканчивается сообщением процессу слияния не удалось создать новое поколение на "Publisher". Подскажите как все таки выбраться из этой ситуации. В понедельник если не заработает - сильно меня однако вспоминать будут. Не помрут конечно, но икота обеспечена. Что нужно - я запустил сбор информации в текстовый файл (задал -Outputverboselevel 2 и -Output) - файл имеется. Запусти параллельно трассировку, но я не знаю что туда отбирать. Задал пока что фильтр по названию задания - агента репликации слиянием. Что в файле и в трассировке искать? Саму процедуру sp_MSmakegeneration я посмотрел, но копаться там - темное дело. Как узнать в чем затык? Или в итоге идти на полное уничтожение не только подписки но и публикации? Кстати, параллельно работает еще одна публикация с одной подпиской на другой базе данных, но там очень слабенькая нагрузка. Проблем нету.
26 апр 15, 00:06    [17564509]     Ответить | Цитировать Сообщить модератору
 Re: процессу слияния не удалось создать новое поколение на Publisher  [new]
garvy
Member

Откуда: Москва
Сообщений: 801
сообщение собственно - Процесс ожидает ответа от запроса "{call sys.sp_MSmakegeneration(?, NULL, NULL, NULL, 100)}" после чего ответ, что истекло время ожидания и т.д. по кругу несколько раз
26 апр 15, 00:13    [17564528]     Ответить | Цитировать Сообщить модератору
 Re: процессу слияния не удалось создать новое поколение на Publisher  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31965
garvy
Запусти параллельно трассировку, но я не знаю что туда отбирать. Задал пока что фильтр по названию задания - агента репликации слиянием. Что в файле и в трассировке искать?

Ну хотя бы посмотреть, на каком стейтменте зависнет агент слияния, и как то понять, что ему мешает.
26 апр 15, 00:19    [17564547]     Ответить | Цитировать Сообщить модератору
 Re: процессу слияния не удалось создать новое поколение на Publisher  [new]
garvy
Member

Откуда: Москва
Сообщений: 801
2015-04-25 20:02:27.834 [100%] [секунд осталось: 2] Создание триггеров репликации в таблице "ТУНасосыТУ"
2015-04-25 20:02:27.884 [100%] [секунд осталось: 2] Создание триггеров репликации в таблице "Товары Комплекты"
2015-04-25 20:02:27.958 [100%] [секунд осталось: 2] Создание триггеров репликации в таблице "Товары Потребители товаров"
2015-04-25 20:02:28.074 [100%] [секунд осталось: 2] Создание триггеров репликации в таблице "Товары Производители товаров"
2015-04-25 20:02:28.142 [100%] [секунд осталось: 2] Создание триггеров репликации в таблице "Товары Цены"
2015-04-25 20:02:28.209 [100%] [секунд осталось: 2] Создание триггеров репликации в таблице "Клиенты СпецификацииСодержание"
2015-04-25 20:04:20.842 [100%] Загрузка изменений данных на подписчик
2015-04-25 20:11:10.739 [100%] Процессу слияния не удалось выполнить запрос, поскольку истекло время ожидания запроса. При повторении этой ошибки увеличьте время ожидания запроса для этого процесса. При устранении неполадок запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
2015-04-25 20:16:10.767 [100%] Процесс ожидает ответ от запроса "{call sys.sp_MSmakegeneration (?, NULL,NULL,NULL,100)}"
2015-04-25 20:18:05.853 [100%] Процессу слияния не удалось выполнить запрос, поскольку истекло время ожидания запроса. При повторении этой ошибки увеличьте время ожидания запроса для этого процесса. При устранении неполадок запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
2015-04-25 20:18:06.260 [100%] Поток с идентификатором 5632 будет ожидать 5 секунд перед повторением запроса на Publisher "SERVER-MO".
2015-04-25 20:25:25.569 [100%] Процессу слияния не удалось выполнить запрос, поскольку истекло время ожидания запроса. При повторении этой ошибки увеличьте время ожидания запроса для этого процесса. При устранении неполадок запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
2015-04-25 20:25:25.774 [100%] Поток с идентификатором 5632 будет ожидать 10 секунд перед повторением запроса на Publisher "SERVER-MO".
Вот еще сообщение из журнала агента слияния.
2015-04-25 20:32:40.113 [100%] Процессу слияния не удалось выполнить запрос, поскольку истекло время ожидания запроса. При повторении этой ошибки увеличьте время ожидания запроса для этого процесса. При устранении неполадок запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
2015-04-25 20:32:40.321 [100%] Поток с идентификатором 5632 будет ожидать 15 секунд перед повторением запроса на Publisher "SERVER-MO".
2015-04-25 20:40:05.001 [100%] Процессу слияния не удалось выполнить запрос, поскольку истекло время ожидания запроса. При повторении этой ошибки увеличьте время ожидания запроса для этого процесса. При устранении неполадок запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
2015-04-25 20:40:05.068 [100%] Поток с идентификатором 5632 будет ожидать 20 секунд перед повторением запроса на Publisher "SERVER-MO".
2015-04-25 20:47:24.697 [100%] Процессу слияния не удалось выполнить запрос, поскольку истекло время ожидания запроса. При повторении этой ошибки увеличьте время ожидания запроса для этого процесса. При устранении неполадок запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
2015-04-25 20:47:24.780 Процессу слияния не удалось создать новое поколение на "Publisher". Чтобы устранить неполадки, запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
2015-04-25 20:47:24.881 Category:NULL
Source: Поставщик репликаций слиянием
Number: -2147200994
Message: Процессу слияния не удалось создать новое поколение на "Publisher". Чтобы устранить неполадки, запустите синхронизацию повторно, включив ведение подробного журнала и указав выходной файл для записи.
26 апр 15, 00:29    [17564574]     Ответить | Цитировать Сообщить модератору
 Re: процессу слияния не удалось создать новое поколение на Publisher  [new]
garvy
Member

Откуда: Москва
Сообщений: 801
Все это происходит после применения первоначального снимка - видно как какие-то триггеры последние применяются, после чего идет Загрузка изменений данных на подписчик. Запустил трассировку. Попробую понять. А как? Я уже запускал ее один раз - там видел те же сообщения, что и в собранном файле сообщений репликации и в журнале агента слияния.
26 апр 15, 00:35    [17564585]     Ответить | Цитировать Сообщить модератору
 Re: процессу слияния не удалось создать новое поколение на Publisher  [new]
invm
Member

Откуда: Москва
Сообщений: 9836
Сделайте для агента слияния новый профиль с увеличенным Query timeout.
26 апр 15, 00:51    [17564628]     Ответить | Цитировать Сообщить модератору
 Re: процессу слияния не удалось создать новое поколение на Publisher  [new]
garvy
Member

Откуда: Москва
Сообщений: 801
Забыл сказать - это я все пытался сделать без первоначальной инициализации данных. Думал - зачем рабочую информацию туда-сюда гонять, если она и так почти вся на местах. В итоге инициализировал таки данные - и все заработало. Возможна конечно небольшая потеря данных, но у нас к этому есть терпение у пользователей.
26 апр 15, 10:49    [17564953]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить