Popravak: Operacija sinkronizacije replikacije spajanja ističe u Microsoft SQL Server 2005

Vrijedi za: Microsoft SQL Server 2005 Standard EditionMicrosoft SQL Server 2005 Developer EditionMicrosoft SQL Server 2005 Enterprise Edition

Pogreške #: 50002786 (SQL hitni popravak)
Microsoft raspodjeljuje popravaka Microsoft SQL Server 2005 kao jednu datoteku radni stol. Jer su kumulativne popravke, svako novo izdanje sadrži sve hitnih popravaka i ispravite sve sigurnosne popravke koji su obuhvaćeni s prethodnim SQL Server 2005 izdanje.

Simptomi


Razmotrite sljedeći scenarij. U Microsoft SQL Server 2005, konfigurirajte replikacije spajanja. Zatim, uvođenje snimka pretplatnika. U ovom scenariju, kada pokrenete Agent spajanje Sinkronizacija podataka, postupak vrijeme kada Agent spajanja poziva sp_MSmakegeneration spremljene procedure. Uz to, kada pokrenete sljedeća izjava repliciranoj bazi podataka pretplatnika nakon operacija ističe, upit vraća neke zapise koji su susceptible problem:
select * from dbo.MSmerge_genhistory gh where not exists       (select * from dbo.MSmerge_contents as mc       where mc.generation = gh.generation)and not exists      (select * from dbo.MSmerge_tombstone as ts       where ts.generation = gh.generation)and genstatus = 0union select * from dbo.MSmerge_genhistory gh where exists       (select * from dbo.MSmerge_contents as mc      where mc.generation = gh.generation      and mc.tablenick <> gh.art_nick)or exists      (select * from dbo.MSmerge_tombstone as ts      where ts.generation = gh.generation      and ts.tablenick <> gh.art_nick)and genstatus = 0

Uzrok


Taj se problem pojavljuje jer postoji redak u tablici MSmerge_genhistory koji zadovoljava jedan od sljedećih uvjeta:
  • U generiranje ima bez promjene koje su mapirane ga u MSmerge_tombstone tablici ili u tablici MSmerge_contents.
  • Jedan ili više redaka koji su mapirani na generiranje ste neispravnu vrijednost u stupcu tablenick u MSmerge_tombstone tablici ili u tablici MSmerge_contents.
Ova situacija uzrokuje sp_MSmakegeneration spremljene procedure da biste prešli u beskonačnoj petlji.

Rješenje


Popravak ovog problema prvo Lansiran u kumulativnu ažuriranje 8. Dodatne informacije o nabavljanju paketa kumulativnim ažuriranjem za SQL Server 2005 Service Pack 2 kliknite sljedeći broj članka u Microsoftovoj bazi znanja:
951217 Cumulative ažurirati paket 8 za SQL Server 2005 Service Pack 2
Napomena Jer su kumulativne na izgradi, svako novo izdanje popravak sadrži sve hitnih popravaka i ispravite sve sigurnosne popravke koji su obuhvaćeni s prethodnim SQL Server 2005 izdanje. Microsoft preporučuje razmotrite primjenom najnovije izdanje popravak koji sadrži ovaj hitni popravak. Za dodatne informacije kliknite sljedeći broj članka u Microsoftovoj bazi znanja:
937137 u SQL Server 2005 izgrađuje koji su izdani nakon izdavanja SQL Server 2005 Service Pack 2
Hitne popravke za Microsoft SQL Server 2005 kreiraju za određeni servisni paketi za SQL Server. Morate zatvoriti SQL Server 2005 Service Pack 2 hitni popravak instalacije sustava SQL Server 2005 Service Pack 2. Po zadanom, hitnim kojemu SQL Server service Pack uključena je u sljedeći servisni paket za SQL Server.

Zaobilazno rješenje


Da biste zaobišli taj problem, slijedite ove korake:
  1. Otkažite operaciju sinkronizacije koji je dovršena.
  2. Pokreni sljedećih tvrdnji nabavite generation_leveling_threshold postavku za publikaciju:
    use <Publication Database Name>goexec sp_helpmergepublication @publication = '<Publication Name>'
    Zabilježite vrijednost generation_leveling_threshold postavku.
  3. Pokreni sljedećih tvrdnji onemogućite generiranje ujednačavanje i generiranje coalescing:
    use <Publication Database Name>exec sp_changemergepublication @publication = '<Publication Name>', @property = 'generation_leveling_threshold', @value = 0
  4. Sinkronizacija podataka za publikaciju.
  5. Nakon sinkronizacije uspješno dovrši, vratite na generation_leveling_threshold postavku natrag na vrijednost koju ste zabilježili u koraku 2. Da biste to učinili, pokrenite sljedeće naredbe:
    use <Publication Database Name>exec sp_changemergepublication @publication = '<Publication Name>', @property = 'generation_leveling_threshold', @value = <Value>
Kada koristite ovu metodu da biste zaobišli taj problem, taj problem će se dogoditi ponovo Ako drugi pretplatnika pokušava obraditi na generiranje. Ponovite te korake za sve pretplatnike tko naići na problem.

Status


Microsoft je potvrdio da se taj problem pojavljuje u Microsoftovim proizvodima navedenima u odjeljku "Odnosi se na".

Dodatne informacije


Dodatne informacije o promijenjeno što datoteke i informacije o bilo kojem preduvjeta za primjenu kumulativnim ažuriranjem paketa koji sadrži hitni popravak opisan u ovom članku Microsoftove baze znanja kliknite sljedeći broj članka da biste pregledali u članak u Microsoftovoj bazi znanja:
951217 Cumulative ažurirati paket 8 za SQL Server 2005 Service Pack 2

Reference


Dodatne informacije o popisu izgradi koji su dostupni nakon servisnog paketa SQL Server Service Pack 2 kliknite sljedeći broj članka u Microsoftovoj bazi znanja:
937137 u SQL Server 2005 izgrađuje koji su izdani nakon izdavanja SQL Server 2005 Service Pack 2
Dodatne informacije o inkrementalni servisiranja Model za SQL Server, kliknite sljedeći broj članka u Microsoftovoj bazi znanja:
935897 an inkrementalni servisiranja Model je dostupna iz tima SQL Server isporučiti hitnih popravaka za prijavljenog problema
Dodatne informacije o nabavljanju SQL Server 2005 Service Pack 2 kliknite sljedeći broj članka u Microsoftovoj bazi znanja:
913089 kako nabaviti najnoviji servisni paket za SQL Server 2005
Dodatne informacije o novim značajkama i poboljšanjima u SQL Server 2005 Service Pack 2, posjetite sljedeće Microsoftovo Web-mjesto:Dodatne informacije o shema imenovanja za SQL Server ažuriranja kliknite sljedeći broj članka u Microsoftovoj bazi znanja:
822499 nova shema imenovanja za softver Microsoft SQL Server update paketi
Dodatne informacije o terminologiji ažuriranje softvera kliknite sljedeći broj članka u Microsoftovoj bazi znanja:
824684 opis standardne terminologije koja se koristi za opisivanje Microsoftovih softverskih ažuriranja