Symptom
I en Microsoft SQL Server 2016-miljö bearbetar du flera partitioner i en tabell parallellt. När du spårar förloppet kan du lägga märke på en ny kodning för minst en av kolumnerna. I den här situationen kan bearbetningen Miss lyckas med ett undantags fel. Ibland kan behandlingen genomföras men efterföljande frågor Miss lyckas med ett undantags fel som liknar följande:
Ett oväntat undantag inträffade. Ett oväntat undantag inträffade. (Microsoft SQL Server 2016 Analysis Services) Program plats: på Microsoft. AnalysisServices. AdomdClient. AdomdConnection. XmlaClientProvider. Microsoft. AnalysisServices. AdomdClient. IExecuteProvider. ExecuteTabular (CommandBehavior beteende, ICommandContentProvider contentProvider, AdomdPropertyCollection commandProperties, IDataParameterCollection parametrar) på Microsoft. AnalysisServices. AdomdClient. AdomdCommand. ExecuteReader (CommandBehavior beteende) på Microsoft. AnalysisServices. AdomdClient. AdomdCommand. ExecuteReader () på Microsoft. ReportingServices. QueryDesigners
Obs! Ibland uppstår problemet när bearbetningen är slutförd och frågor körs mot bearbetade data.
Lösning
Kumulativ uppdaterings information
Korrigeringen för det här problemet ingår i följande kumulativa uppdatering för SQL Server:
Varje ny kumulativ uppdatering för SQL Server innehåller alla snabb korrigeringar och alla säkerhets korrigeringar som ingick i den föregående kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:
Lösning
Lös problemet genom att göra något av följande:
-
Bestäm vilka kolumner som kräver omkodning och Använd en falsk partition i början för att generera värden som ska tvinga hash-kodning i identifierings fasen. Den falska partitionen måste vara den som används för att välja kodningen innan parallellt börjar. När alla partitioner har bearbetats kan du rensa eller ta bort den falska partitionen.
-
Använd seriell bearbetning i stället för parallell bearbetning.
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".
Mer information
Parallell bearbetning av tabell partitioner har följande logik:
-
Använd data på den enda partitionen för att bestämma kodningen (antingen värde eller hash) för kolumnerna.
-
När kodningen är markerad kan de andra partitionerna börja arbeta parallellt.
-
Om värde kodning är markerad och när raderna hämtas kan ett värde visas som inte passar i värde kodnings planen. I det här fallet måste hela kolumnen kodas om till hash-kodningsschemat.
-
Den här omkodningen (konvertering av värde kodning till hash-kodning) löser ett problem när andra partitioner behandlas samtidigt.
Referenser
Lär dig mer om terminologin som Microsoft använder för att beskriva program varu uppdateringar.