KB3011807 – POPRAVKA: Veliki lanac blokiranja se javlja kada koristite replikaciju objedinjavanja u SQL Server 2012 ili SQL Server 2014

Primenjuje se na
SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard

Simptomi

Pretpostavimo da koristite replikaciju objedinjavanja u sistemu Microsoft SQL Server 2012 ili Microsoft SQL Server 2014. Kao deo procesa sinhronizacije, agent za objedinjavanje kreira novu generaciju u sesiji. Ako je iz nekog razloga, kao što je zastoj ili time-out, transakcija generacije koja je izabrana kao žrtva zastoja, a transakcija se vrati, može postojati veliki lanac blokiranja za MSinternal_makegeneration_inprog zaključavanje aplikacija u predstojećoj generaciji, a prethodno pomenuta sesija je prikazana kao blokator glave.

Uzrok

Zaključavanje aplikacije koje se koristi za obezbeđivanje procesa kreiranja generacije je zaključavanje aplikacije na nivou sesije. Kada se otkrije mrtva tačka tokom procesa generisanja, samo se transakcija vraća, ali sesija nije odjavljena. Da biste oslobodili zaključavanje aplikacije na nivou sesije, sesija mora da se odjavi. Zbog toga, zbog dizajna logike ponovnog pokušaja (sesija neće biti odjavljena tokom generisanja koja pravi neuspeh u replikaciji objedinjavanja), ako prva generacija koja izvršava ne uspe sa mrtvom tačkom, zaključavanje sesije (MSinternal_makegeneration_inprog) koje je dobila neće biti otpušteno tokom vraćanja transakcije. To uzrokuje blokiranje lanca zahteva za zaključavanje u procesu izrade predstojeće generacije. Blokator glave je prikazan kao prva generacija koja pravi zahtev koji ne uspeva sa zastojem.
Pre hitne ispravke, SQL Server samo briše zaključavanje za uspešan proces generisanja. Ako dođe do mrtve pete, to ostavlja zaključavanje aplikacije sesije pre odjavljivanja sesije.

Rešenje

Ovaj problem je prvi put rešen u sledećoj kumulativnoj ispravci sistema SQL Server.

Kumulativna ispravka 5 za SQL Server 2014 /en-us/help/3011055

Kumulativna ispravka 3 za SQL Server 2012 SP2 /en-us/help/3002049

Osnovni podaci o kumulativnim ispravkama za SQL Server

Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i sve bezbednosne ispravke koje su uključene u prethodnu kumulativnu ispravku. Pogledajte najnovije kumulativne ispravke za SQL Server:

      

Status

Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku „Odnosi se na“.