FIX: ' fout: 17066 ' treedt op wanneer u een gepartitioneerde niet-geclusterde index maken in SQL Server 2008 R2 een parallelle uitvoeringsplan wordt gebruikt.

Van toepassing: Microsoft SQL Server 2008 R2 Service Pack 1SQL Server 2008 R2

Microsoft distribueert oplossingen voor Microsoft SQL Server 2008 R2 als één downloadbaar bestand. Aangezien de oplossingen cumulatief zijn, elke nieuwe versie bevat alle hotfixes en de beveiligingscorrecties die opgenomen in de vorige SQL Server 2008 R2 zijn release opgelost.

Symptomen


Wanneer u probeert een gepartitioneerde niet-geclusterde index maken in Microsoft SQL Server 2008 R2 met een parallelle uitvoeringsplan, probleem een met de volgende symptomen:
  • De volgende foutberichten worden vastgelegd in het foutenlogboek van SQL Server:
    < datum tijd > spid < n > fout: 17066, ernst: 16, staat: 1. < datum tijd > spid < n > bevestiging van SQL Server: bestand: < sobuild.c >, regel = 3392-bevestiging is mislukt = ' CompareRow (rightPageRow, * m_pSEBindings, keyCnt, * pHobtAccess, PAGE_ LEAF_LEVEL)'. Deze fout kan zijn timing is gerelateerd. DBCC CHECKDB gebruiken om te controleren van de database voor structurele integriteit als de fout blijft optreden nadat u de instructie opnieuw, of start de server om ervoor te zorgen in het geheugen gegevensstructuren niet beschadigd zijn.
  • Het plan voor parallelle uitvoering maakt de index.
  • De clienttoepassing die de instructie CREATE INDEX verzendt, wordt een uitzondering voor SQL Server.
  • De verbinding tussen de client en de server is afgesloten.
Opmerking
  • Een plan voor parallelle uitvoering kan worden gebruikt in de volgende situaties:
    • U instellen de optie MAXDOP query geheugensteun op een waarde die groter is dan 1.
    • U de Mate van parallellisme Max -optie ingesteld op 0 of op een waarde die groter is dan 1 in de configuratie van de server.
  • Dit probleem treedt niet op in Microsoft SQL Server 2008.

Oorzaak


Dit probleem treedt op omdat twee of meer SQL Server parallelle threads index wordt gemaakt op de partitie met overlappende bereiken uitvoeren.

Oplossing


Cumulatieve update informatie

SQL Server 2008 R2 servicepack 1

De correctie voor dit probleem werd voor het eerst uitgebracht in de cumulatieve Update 1 voor Service Pack 1 voor SQL Server 2008 R2. Voor meer informatie over het verkrijgen van dit cumulatieve update-pakket, klikt u op het volgende artikel in de Microsoft Knowledge Base:
2544793 Cumulatieve updatepakket 1 voor Service Pack 1 voor SQL Server 2008 R2
Opmerking Omdat de opbouw cumulatief van opzet zijn, elke nieuwe versie van de correctie bevat alle hotfixes en de beveiligingscorrecties die opgenomen in de vorige SQL Server 2008 R2 zijn release opgelost. We raden het toepassen van de meest recente hotfix-versie waarin deze hotfix is opgenomen. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
2567616 SQL Server 2008 R2 maakt die zijn uitgebracht na Service Pack 1 voor SQL Server 2008 R2 is uitgebracht.

SQL Server 2008 R2

De correctie voor dit probleem werd voor het eerst uitgebracht in cumulatieve Update 8. Voor meer informatie over het verkrijgen van dit cumulatieve updatepakket voor SQL Server 2008 R2, klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:
2534352 Cumulatieve updatepakket 8 voor SQL Server 2008 R2
Opmerking Omdat de opbouw cumulatief van opzet zijn, elke nieuwe versie van de correctie bevat alle hotfixes en de beveiligingscorrecties die opgenomen in de vorige SQL Server 2008 R2 zijn release opgelost. We raden het toepassen van de meest recente hotfix-versie waarin deze hotfix is opgenomen. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
981356 SQL Server 2008 R2 versies die zijn uitgebracht na de release van SQL Server 2008 R2

Workaround


Om dit probleem te omzeilen, kunt u een van de volgende methoden gebruiken:
  • De Maximale mate van parallellisme optie ingesteld op 1 in de configuratie van de server voordat u de index maken.
  • De queryaanwijzingsoptie van de MAXDOP ingesteld op 1 wanneer u de index maakt.

Status


Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.

Meer informatie


Ga naar de volgende MSDN-website voor meer informatie over de instructie CREATE INDEX : Ga naar de volgende MSDN-website voor meer informatie over de Functie PARTITION maken -instructie: