KB982857. Виправлення. Стається збій агента розповсюдження з кодом помилки 20598, якщо базу даних публікації настроєно за допомогою параметра "Читати збережений знімок"

Застосовується до
SQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Standard SQL Server 2008 Workgroup SQL Server 2008 R2 Datacenter SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2008 R2 Workgroup

Корпорація Майкрософт розповсюджує виправлення для Microsoft SQL Server 2008 і Microsoft SQL Server 2008 R2 як один файл, який можна завантажити. Оскільки виправлення накопичуються, кожний новий випуск містить усі виправлення та всі виправлення системи безпеки, які входили до складу попереднього випуску виправлень SQL Server 2008 або SQL Server 2008 R2.

Ознаки

Розглянемо такий сценарій в Microsoft SQL ServerSQL Server 2008 або в Microsoft SQL ServerSQL Server 2008 R2:

  • Настроюється транзакційна реплікація для бази даних.
  • База даних настроюється за допомогою параметра read_committed_snapshot.
  • Репліку настроєно на використання власного sync_method. Потім ініціалізуються підписники реплікації та генерується знімок для реплікації.

У цьому випадку стається помилка агента розподілу з кодом помилки 20598. Крім того, може з'явитися одне з таких повідомлень про помилку:

  • Примітка.

    <Date Time spid> **<ID>** Replication-Replication Distribution
    Підсистема: помилка імені агента<> агента. Рядок не знайдено в абонента під час застосування реплікованої команди.

  • Примітка.

    <Дата Час spid> **<ID>** Помилка: 14151, Важливість: 18, Стан: 1.

    <Date Time spid> **<ID>** Replication-Replication Distribution

    Підсистема: помилка імені агента<> агента. Порушення обмеження PRIMARY KEY '<Ім'я> первинного ключа'. Неможливо вставити дублікат ключа в об'єкт '<table in subscriber>'.

Причина

Ця проблема виникає тому, що під час створення знімка для реплікації відсутній замок.

Спосіб усунення проблеми

Сукупні відомості про оновлення

SQL ServerSQL Server 2008 із пакетом оновлень 1

Вирішення цієї проблеми вперше було випущено в сукупному пакеті оновлень 9 для SQL Server SQL Server 2008 із пакетом оновлень 1 (SP1).

Примітка. Оскільки збірки є кумулятивними, кожний новий випуск виправлень містить усі виправлення та всі виправлення системи безпеки, які входили до складу попереднього випуску виправлень SQL Server 2008 року. Корпорація Майкрософт рекомендує застосовувати найновіший випуск виправлень, який містить це виправлення. Щоб отримати докладні відомості, клацніть номер цієї статті бази знань Microsoft:

970365 Збірки SQL Server 2008, випущені після випуску SQL Server оновлення 1 у 2008 році
Виправлення Microsoft SQL Server 2008 створюються для конкретних пакетів оновлень SQL Server. Необхідно застосовувати виправлення з пакетом оновлень 1 SQL Server 2008 до інсталяції SQL Server 2008 із пакетом оновлень 1. За замовчуванням усі виправлення, які містяться в пакеті оновлень SQL Server, включаються в наступний пакет оновлень SQL Server.

SQL ServerSQL Server 2008 із пакетом оновлень 2

Вирішення цієї проблеми вперше було випущено в сукупному пакеті оновлень 1 для SQL Server 2008 р. з пакетом оновлень 2. Щоб отримати додаткові відомості про цей сукупний пакет оновлень, клацніть цей номер статті, щоб переглянути її в базі знань Microsoft:

2289254 Сукупний пакет оновлень 1 для SQL Server 2008 із пакетом оновлень 2Note Оскільки збірки є кумулятивними, кожний новий випуск виправлень містить усі виправлення та всі виправлення системи безпеки, які входили в попередній випуск виправлень SQL Server 2008 року. Радимо застосувати найновіший випуск виправлень, який містить це виправлення. Щоб отримати докладні відомості, клацніть номер цієї статті бази знань Microsoft:

2402659 Збірки SQL Server 2008, випущені після виходу SQL Server 2008 року з пакетом оновлень 2

SQL Server 2008 R2

Вирішення цієї проблеми вперше випущено в сукупному пакеті оновлень 4. Щоб дізнатися більше, як отримати цей сукупний пакет оновлень для SQL Server 2008 R2, клацніть цей номер статті, щоб переглянути її в базі знань Microsoft:

2345451 Сукупний пакет оновлень 4 для SQL Server 2008 R2 Примітка. Оскільки збірки є кумулятивними, кожний новий випуск виправлень містить усі виправлення та всі виправлення системи безпеки, які входили до складу попереднього випуску виправлення SQL Server 2008 R2. Радимо застосувати найновіший випуск виправлень, який містить це виправлення. Щоб отримати докладні відомості, клацніть номер цієї статті бази знань Microsoft:

981356 Збірки SQL Server 2008 R2, випущені після випуску SQL Server 2008 R2

Стан

Корпорація Microsoft підтвердила, що це одна з проблем з продуктами Microsoft, перелічених у розділі "Застосовується до".

Посилання

Докладні відомості про SQL Server Replication див. на веб-сайті мережа Microsoft для розробників (MSDN):

SQL ServerSQL Server replication Для отримання додаткових відомостей про ізоляцію знімків відвідайте цей веб-сайт MSDN:

Ізоляція знімка Щоб отримати додаткові відомості про модель інкрементного обслуговування для SQL Server, клацніть цей номер статті, щоб переглянути її в базі знань Microsoft:
 

935897 Команда SQL Server надає поточні виправлення для проблем, про які повідомили

Докладні відомості про схему іменування для оновлень SQL Server див. у статті бази знань Microsoft:
 

822499 Нова схема іменування для пакетів оновлення програмного забезпечення Microsoft SQL Server Щоб отримати додаткові відомості про термінологію оновлення програмного забезпечення, клацніть номер цієї статті бази знань Microsoft:

824684 Опис стандартної термінології, яка використовується для опису оновлень програмного забезпечення Microsoft