Primjenjuje se na
SQL Server 2008 R2 Standard SQL Server 2008 R2 Standard Edition for Small Business SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Web SQL Server 2008 R2 Workgroup

Microsoft distribuira popravke sustava Microsoft SQL Server 2008 R2 kao jednu datoteku za preuzimanje. Budući da su popravci kumulativni, svako novo izdanje sadrži sve hitne popravke i sve sigurnosne popravke koji su obuhvaćeni prethodnim izdanjem rješenja SQL Server 2008 R2.

Simptomi

Razmislite o sljedećem scenariju:

  • Imate model Master Data Services (MDS) i entitet koji ima atribut utemeljen na domeni u programu Microsoft SQL Server 2008 R2. Atribut utemeljen na domeni osmišljen je tako da se sam referira na isti atribut.Na primjer, imate entitet Zaposlenik koji ima atribut ManagerName. Atribut ManagerName odnosi se na isti entitet zaposlenika.Napomena Voditelj je također vrsta zaposlenika.

  • Postoji izvedena hijerarhija definirana na atributu za prikaz rekurzivnog nadređenog/podređenog odnosa za atribut utemeljen na domeni.

  • Učitavate vrijednosti podataka koje sadrže jednu ili više kružnih referenci na MDS pripremnu tablicu. Takvo ponašanje uzrokuje kružnu referencu, a prvi čvor u atributu nije dio kruga.Na primjer, sljedeći uzorak podataka prikazuje kružnu referencu. No vrijednost člana Člana1 nije dio kruga:

    Member1 --manager attribute--> Member2 --manager attribute--> Member3 --manager attribute--> Member2 --manager attribute--> Member3

    insert into mdm.tblStgMemberAttribute(ModelName, EntityName, MemberType_ID, MemberCode, AttributeName, AttributeValue, Status_ID)Values ('EntityTest', 'ModelTest', 1, 'Member3', 'Manager', 'Member2', 0),('EntityTest', 'ModelTest', 1, 'Member2', 'Manager', 'Member3', 0),('EntityTest', 'ModelTest', 1, 'Member3', 'Manager', 'Member2', 0),('EntityTest', 'ModelTest', 1, 'Member2', 'Manager', 'Member1', 0)('EntityTest', 'ModelTest', 1, 'Member1', 'Manager', 'NULL', 0)
  • Pomoću postupka pripreme MDS-a koristite jednu od sljedećih metoda za učitavanje vrijednosti podataka u entitet:

    • Pokrenite exec [mdm]. [udpStagingSweep] postupak pomoću potrebnih parametara za obradu postupnih podataka.

    • Kliknite Upravljanje integracijom da biste posjetili početnu stranicu MDS web-mjesta. Na stranici Uvoz izvoza u zaglavlju sekcije Neupareni pripremni zapisikliknite ikonu zupčanika da biste obradili zapise za određeni model i verziju.

U ovom scenariju pozadinski proces tijekom pripremnog postupka može naići na beskonačnu petlju kada pozadinski proces interno nazove [mdm]. [udpMemberRecursiveCircularCheck] procedura.

Uzrok

Taj se problem pojavljuje jer postupci udpStagingSweep i udpStagingMemberAttributeSave pozivaju postupak udpMemberRecursiveCircularCheck jednom za svaki pripremni redak. To bi ponašanje trebalo provjeriti vrijednost atributa utemeljenu na domeni i vratiti pogrešku ako pripremni redak uzrokuje kružnu referencu zajedno s postojećim podacima. Kada potvrdite sve pripremne retke, primit ćete sljedeće rezultate:

  • Primjenjuju se pripremni reci bez pogrešaka.

  • U pripremnim recima s pogreškama prikazuje se kôd pogreške.

Ako su uvjeti opisani u odjeljku "Simptomi" istiniti, [mdm]. [udpMemberRecursiveCircularCheck] procedure petlje neograničeno dok ne iscrpe resurse poslužitelja ili do prekoračenja vremena.

Rješenje

Informacije o kumulativnom ažuriranju

SQL Server 2008 R2 Service Pack 1

Rješenje za taj problem prvi je put izdano u skupnom ažuriranju 4. Dodatne informacije o tome kako nabaviti ovaj paket kumulativnog ažuriranja za SQL Server 2008 R2 SP1 kliknite sljedeći broj članka u Microsoftovoj bazi znanja:

2633146 Kumulativno ažuriranje paketa 4 za SQL Server 2008 R2 Service Pack 1Note Budući da su međuverzije kumulativne, svako novo izdanje popravka sadrži sve hitne popravke i sve sigurnosne popravke koji su obuhvaćeni prethodnim izdanjem rješenja SQL Server 2008 R2 SP1. Preporučujemo da razmislite o primjeni najnovijeg izdanja za popravak koje sadrži taj hitni popravak. Za više informacija kliknite sljedeći broj članka da biste prikazali članak u Microsoftovoj bazi znanja:

2567616 Izdane SQL Server 2008 R2 objavljene nakon izdavanja SQL Server 2008 R2 Service Pack 1

Status

Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku "Odnosi se na".

Zaobilazno rješenje

Problem se zaobilazno može riješiti na sljedeće načine:

  • Da biste spriječili problem, slijedite ove korake:

    1. Ručno pregledajte vrijednosti podataka članova koje se umećite u pripremnu tablicu prije izvođenja pripremnog postupka.

    2. Provjerite sadrže li sve vrijednosti članova za atribute utemeljene na domeni kružne reference opisane u odjeljku "Simptomi"

  • Kada se pojavi problem opisan u odjeljku "Simptomi", slijedite ove korake da biste riješili problem:

    1. Odredite sesiju koja se izvodi u beskonačnoj petlji.

    2. Prekinite sesiju da biste zaustavili petlju.

    3. Izbrišite vrijednosti kružne reference iz pripremne tablice prije ponovnog obrade kružne reference.

Napomene

  • Da biste odredili koju sesiju želite ubiti, upotrijebite jednu od sljedećih metoda:

    • Korištenje monitora aktivnosti u aplikaciji Microsoft SQL Server Management Studio.

    • Odaberite iz prikaza sys.sysprocesses ili sys.dm_exec_requests dinamičkog upravljanja (DMV) da biste prepoznali sesije koje rade unutar MDS baze podataka u kojoj se procesor i vrijeme brzo povećavaju. Provjerite podudara li se trenutni upit koji se izvodi u sesiji s nazivima procedura opisanima u odjeljku "Uzrok".

  • Da biste odredili trenutno pokrenutu proceduru za sesije, koristite jedan od sljedećih načina:

    • Desnom tipkom miša kliknite izbornik Detalji na svakom postupku na popisu procesa nadzora aktivnosti.

    • Koristite jedan od sljedećih parametara:

      • Naredba DBCC INPUTBUFFER (spid) zajedno s ID-om sesije.

      • Funkcija SELECT * FROM sys.dm_exec_sql_text(sqlhandle) zajedno s podudarnim parametrom SQL ručice kada koristite izlaz DMV.

Reference

Dodatne informacije o otvaranju monitora aktivnosti u aplikaciji SQL Server Management Studio, posjetite sljedeće web-mjesto MSDN-a:

Otvaranje monitora aktivnosti u programu SQL Server Management StudioDodatne informacije o sintaksi KILL potražite na sljedećem web-mjestu MSDN-a:

Opće informacije o sintaksi KILLDodatne informacije o značajci sys.dm_exec_requests DMV potražite na sljedećem web-mjestu MSDN-a:

Opće informacije o sys.dm_exec_requests DMVDodatne informacije o značajci sys.dm_exec_sql_text DMV potražite na sljedećem web-mjestu MSDN-a:

Opće informacije o sys.dm_exec_sql_text DMVDodatne informacije o naredbi DBCC INPUTBUFFER potražite na sljedećem web-mjestu MSDN- a:

Opće informacije o naredbi DBCC INPUTBUFFERDodatne informacije o inkrementalnim servisnim modelom za SQL Server potražite u članku iz Microsoftove baze znanja pod sljedećim brojem:

935897 Inkrementalni servisni model dostupan je od SQL Server tima za isporuku hitnih popravaka za prijavljene problemeZa dodatne informacije o shemi imenovanja za ažuriranja sustava SQL Server kliknite sljedeći broj članka da biste pogledali članak u Microsoftovoj bazi znanja:

822499 Nova shema imenovanja za pakete SQL Server ažuriranja softveraZa dodatne informacije o terminologiji ažuriranja softvera kliknite sljedeći broj članka u Microsoftovoj bazi znanja:

824684 Opis standardne terminologije koja se koristi za opisIvanje Microsoftovih softverskih ažuriranja

Potrebna vam je dodatna pomoć?

Želite dodatne mogućnosti?

Istražite pogodnosti pretplate, pregledajte tečajeve za obuku, saznajte kako zaštititi uređaj i još mnogo toga.