KB982857 - Oprava: Agent distribuce selže s kódem chyby 20598, pokud je databáze publikace nakonfigurována s možností Snímek potvrzené čtením

Platí pro
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 distribuuje opravy pro Microsoft SQL Server 2008 a Microsoft SQL Server 2008 R2 jako jeden soubor ke stažení. Vzhledem k tomu, že opravy jsou kumulativní, obsahuje každá nová verze všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozího vydání opravy pro SQL Server 2008 nebo SQL Server 2008 R2.

Příznaky

Podívejte se na následující scénář v systému Microsoft SQL Server 2008 nebo Microsoft SQL Server 2008 R2:

  • Nakonfigurujete transakční replikaci databáze.
  • Databáze se konfiguruje pomocí možnosti read_committed_snapshot.
  • Replikace je nakonfigurována tak, aby používala nativní sync_method. Potom se inicializují předplatitelé replikace a vygeneruje se snímek pro replikaci.

V tomto scénáři dojde k selhání distribučního agenta s kódem chyby 20598. Dále se může zobrazit jedna z následujících chybových zpráv:

  • Poznámka

    <Date Time> spid**<ID>** Replication-Replication Distribution
    Subsystém: Agent< Agent Name> failed. Při použití replikovaného příkazu nebyl u odběratele nalezen řádek.

  • Poznámka

    <Datum a čas> spid**<ID>** Chyba: 14151, závažnost: 18, stav: 1.

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

    Subsystém: Agent< Agent Name> failed. Porušení omezení PRIMÁRNÍHO KLÍČE '<Název> primárního klíče'. Duplicitní klíč nelze vložit do objektu tabulka< odběratele>.

Příčina

K tomuto problému dochází, protože při generování snímku pro replikaci chybí zámek.

Řešení

Informace o kumulativní aktualizaci

SQL Server 2008 Service Pack 1

Oprava tohoto problému byla poprvé vydána v kumulativní aktualizaci 9 pro SQL Server 2008 Service Pack 1.

Poznámka: Vzhledem k tomu, že sestavení jsou kumulativní, obsahuje každá nová verze opravy všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozího vydání opravy pro SQL Server 2008. Společnost Microsoft doporučuje zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

970365 Buildy SQL Server 2008 vydané po vydání aktualizace Service Pack 1 SQL Server 2008
Opravy hotfix pro Microsoft SQL Server 2008 se vytvářejí pro konkrétní aktualizace Service Pack pro SQL Server. Opravu hotfix pro SQL Server 2008 Service Pack 1 je nutné nainstalovat k instalaci systému SQL Server 2008 Service Pack 1. Ve výchozím nastavení jsou všechny opravy hotfix poskytované v aktualizaci Service Pack pro SQL Server zahrnuty do další aktualizace Service Pack pro SQL Server.

SQL Server 2008 Service Pack 2

Oprava, která tento problém řeší, byla poprvé vydána v rámci kumulativní aktualizace 1 pro SQL Server 2008 Service Pack 2. Další informace o tomto balíčku kumulativních aktualizací naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2289254 Kumulativní aktualizace 1 pro SQL Server 2008 Service Pack 2Poznámka Vzhledem k tomu, že buildy jsou kumulativní, obsahuje každá nová verze opravy všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí verze opravy pro SQL Server 2008. Doporučujeme zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2402659 Buildy SQL Server 2008 vydané po vydání aktualizace Service Pack 2 SQL Server 2008

SQL Server 2008 R2

Oprava tohoto problému byla poprvé vydána v kumulativní aktualizaci 4. Další informace o získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 R2 naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

2345451 Balíček kumulativní aktualizace 4 pro SQL Server 2008 R2 Poznámka: Vzhledem k tomu, že buildy jsou kumulativní, obsahuje každá nová verze opravy všechny opravy hotfix a všechny opravy zabezpečení, které byly zahrnuty v předchozí verzi opravy SQL Server 2008 R2. Doporučujeme zvážit použití nejnovější verze opravy, která obsahuje tuto opravu hotfix. Další informace naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

981356 Buildy SQL Server 2008 R2, které byly vydány po vydání verze SQL Server 2008 R2

Stav

Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.

Reference

Další informace o funkci Replikace serveru SQL Server naleznete na následujícím webu MSDN (web MSDN (Microsoft Developer Network)):

Replikace serveru SQL Server Další informace o izolaci snímků naleznete na následujícím webu MSDN:

Izolace snímku Další informace o modelu přírůstkové údržby pro SQL Server naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:
 

935897 Tým SQL Server poskytuje k poskytování oprav hotfix pro hlášené problémy model přírůstkové údržby

Další informace o schématu pojmenování aktualizací pro aktualizace serveru SQL Server naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:
 

822499 Nové schéma pojmenování balíčků aktualizací softwaru Microsoft SQL Server Další informace o terminologii aktualizací softwaru naleznete v následujícím článku znalostní báze znalostní báze Microsoft Knowledge Base:

824684 Popis standardní terminologie používané k popisu aktualizací softwaru společnosti Microsoft