FIX: Foutbericht 'een bevestiging systeem controleren is mislukt' wanneer u een transactie SQL-query in Microsoft SQL Server 2008 of Microsoft SQL Server 2008 R2 uitvoert


Microsoft distribueert Microsoft SQL Server 2008 en Microsoft SQL Server 2008 R2 worden opgelost 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 of SQL Server 2008 R2 zijn release opgelost.

Symptomen


Wanneer u een transactie SQL-query in Microsoft SQL Server 2008 of SQL Server 2008 R2 uitvoert, ziet u de volgende symptomen:
  • U ontvangt een foutbericht met de volgende melding:
    Locatie: e:\sql10_katmai_t\sql\ntdbms\storeng\dfs\access\sebind.h:1139

    Expressie: bufferLen > = colLen

    SPID: <SPID>

    Proces-ID: <id>

    Msg-3624, 20 niveau, staat 1, regel 2

    Een systeembevestigingscontrole is mislukt. Controleer het foutenlogboek van SQL Server voor meer informatie. Een bevestigingsfout wordt meestal veroorzaakt door een bug of gegevens softwarebeschadiging. Als u wilt controleren of de database beschadigd raakt, kunt u DBCC CHECKDB uitvoeren. Als u overeengekomen dumpen naar Microsoft te verzenden tijdens de installatie, een mini-dump naar Microsoft verzonden. Mogelijk is een update beschikbaar van Microsoft in het meest recente Service Pack of een QFE van technische ondersteuning.

    Msg 0, niveau 20 staat 0, regel 0

    Er is een ernstige fout opgetreden op de huidige opdracht. De resultaten, moeten indien aanwezig, worden genegeerd.
  • Een foutbericht van de volgende strekking vastgelegd in het foutenlogboek van SQL Server:
    <Datum tijd> <ID> spid gebruiken 'dbghelp.dll' versie '4.0.5'

    <Datum tijd> spid <ID> ** Dump thread - spid = 0, EG = 0x0000000086DC00F0

    <Datum tijd> spid <ID> *** Stack Dump wordt verzonden naar C:\Program Files\Microsoft SQL Server\MSSQL10. MSSQLSERVER\MSSQL\LOG \SQLDump0001.txt

    <Date Time> spid<ID> * *******************************************************************************

    <Datum tijd> spid <ID> *

    <Datum tijd> spid <ID> * STACK DUMP beginnen:

    <Datum tijd> spid <ID> * <Datum tijd> spid <ID>

    <Datum tijd> spid <ID> *

    < datum tijd > spid< ID > * locatie: e:\sql10_katmai_t\sql\ntdbms\storeng\dfs\access\sebind.h:1139

    < datum tijd > spid< ID > * expressie: bufferLen > = colLen

    < datum tijd > spid< ID > * SPID: < SPID >

    < datum tijd > spid< ID > * proces-ID: < id >

    < datum tijd > spid< ID > *

    < datum tijd > spid< ID > * Input Buffer 264 bytes -

    < datum tijd > spid< ID > * Selecteer * koppelen van O-inner t1 t2 T O.id = T.id en O.tit

    < datum tijd > spid< ID > * le = T.title order by-O.id, O.title, optie (lus join)

    < datum tijd > spid< ID > *

    ... ...

    ... ... < datum tijd > spid< ID > fout: 17066, ernst: 16 staat: 1.

    < datum tijd > spid< ID > bevestiging van SQL Server: bestand: < e:\sql10_katmai_t\sql\ntdbms\storeng\dfs\access\sebind.h >, regel 1139 beschermlak mislukt Assertion = = ' bufferLen > = colLen'. 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.

    < datum tijd > spid< ID > fout: 3624, ernst: 20, staat: 1.

    < datum tijd > spid< ID >

    Een systeembevestigingscontrole is mislukt. Controleer het foutenlogboek van SQL Server voor meer informatie. Een bevestigingsfout wordt meestal veroorzaakt door een bug of gegevens softwarebeschadiging. Als u wilt controleren of de database beschadigd raakt, kunt u DBCC CHECKDB uitvoeren. Als u overeengekomen dumpen naar Microsoft te verzenden tijdens de installatie, een mini-dump naar Microsoft verzonden. Mogelijk is een update beschikbaar van Microsoft in het meest recente Service Pack of een QFE van technische ondersteuning.
  • Een mini-bestand wordt in de map waarin de logboekbestanden van SQL Server-fout gegenereerd.
Deze problemen treden op wanneer de volgende voorwaarden voldaan wordt:
  • De query haalt gegevens uit twee of meer tabellen met behulp van de JOIN -instructie.
  • Een van de tabellen is compressie ingeschakeld.
  • U hebt een sleutel geclusterde index op een kolom in de tabel.
  • De kolom wordt verwezen naar kolommen in andere tabellen met verschillende lengtes.
  • De kolom wordt gebruikt in het filter aan.
  • De LUS JOIN join-aanwijzing maakt gebruik van de query of SQL Server voert een bewerking die gebruikmaakt van de LUS JOIN join-aanwijzing.

Oorzaak


Het probleem treedt op omdat de lengte van de sleutel data groter dan de lengte van de buffer gecomprimeerde sleutelwaarde is.

Oplossing


Cumulatieve update informatie

SQL Server 2008 servicepack 1

De correctie voor dit probleem werd voor het eerst uitgebracht in de cumulatieve Update 9 voor SQL Server 2008 Service Pack 1. Voor meer informatie over dit cumulatieve updatepakket klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base:
2083921 cumulatieve update 9 voor SQL Server 2008 Service Pack 1
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 versie van SQL Server 2008 zijn release opgelost. Microsoft raadt u aan de toepassing van de meest recente hotfix-versie waarin deze hotfix is opgenomen. Voor meer informatie klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
970365 met de SQL Server 2008 bouwt die zijn uitgebracht na Service Pack 1 voor SQL Server 2008 is uitgebracht
Hotfixes voor Microsoft SQL Server 2008 worden voor een specifieke servicepacks voor SQL Server gemaakt. U moet een hotfix voor SQL Server 2008 Service Pack 1 toepassen op een installatie van SQL Server 2008 Service Pack 1. Voor elke hotfix die wordt geleverd in een servicepack van SQL Server is standaard opgenomen in het volgende servicepack voor SQL Server.

SQL Server 2008 servicepack 2

De correctie voor dit probleem werd voor het eerst uitgebracht in de cumulatieve Update 1 voor SQL Server 2008 Service Pack 2. Voor meer informatie over dit cumulatieve updatepakket klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base:
2289254 cumulatieve update 1 voor SQL Server 2008 Service Pack 2
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 versie van SQL Server 2008 zijn release opgelost. We raden het toepassen van de meest recente hotfix-versie waarin deze hotfix is opgenomen. Voor meer informatie klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2402659 met de SQL Server 2008 bouwt die zijn uitgebracht nadat SQL Server 2008 Service Pack 2 is uitgebracht.

SQL Server 2008 R2

De correctie voor dit probleem werd voor het eerst uitgebracht in de cumulatieve Update 4. 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:
2345451 cumulatieve updatepakket 4 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. Voor meer informatie klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
981356 bouwt de SQL Server 2008 R2 die zijn uitgebracht na de release van SQL Server 2008 R2

Informatie over de hotfix

Een ondersteunde hotfix is beschikbaar bij Microsoft. Deze hotfix is echter alleen bedoeld voor het probleem dat wordt beschreven in dit artikel. Voer deze hotfix alleen uit op systemen waarop dit specifieke probleem zich voordoet.

Als de hotfix gedownload kan worden, is er een sectie 'Hotfix downloaden' aan het begin van dit Knowledge Base-artikel. Als deze sectie niet wordt weergegeven, dien dan een verzoek in bij Microsoft Customer Service and Support om de hotfix te verkrijgen.

Opmerking Als er andere problemen optreden of als probleemoplossing is vereist, moet u wellicht een apart serviceverzoek indienen. De normale ondersteuningskosten gelden voor extra ondersteuningsvragen en problemen die niet in aanmerking komen voor deze specifieke hotfix. Voor een volledige lijst met telefoonnummers van Microsoft Customer Service and Support of een afzonderlijk serviceverzoek maken, gaat u naar de volgende Microsoft-website:Opmerking Het formulier 'Hotfix kan worden gedownload' geeft de talen weer waarvoor de hotfix beschikbaar is. Als uw taal niet wordt weergegeven, is dit omdat een hotfix niet voor die taal beschikbaar is.

Vereisten

U moet SQL Server 2008 Service Pack 1 hebben geïnstalleerd om deze hotfix te kunnen hebben.

Opstartinformatie

U hoeft de computer niet opnieuw op te starten nadat u deze hotfix hebt toegepast.

Informatie over het register

U beschikt niet over het register wijzigen nadat u deze hotfix hebt toegepast.

Bestandsinformatie


De Engelse versie van deze hotfix heeft de bestandskenmerken (of recentere bestandskenmerken) die in de volgende tabel worden weergegeven. De datums en tijden voor deze bestanden worden weergegeven in Coordinated Universal Time (UTC). Wanneer u de bestandsinformatie weergeeft, wordt deze naar lokale tijd geconverteerd. Om het verschil tussen UTC en lokale tijd te vinden, gebruik de
Tijdzone
tabblad de
Datum en tijd
een item in het Configuratiescherm.

32-bits versie van SQL Server 2008
BestandsnaamBestandsversieBestandsgrootteDatumTijdPlatform
Databasemailengine.dll10.0.2781.075,62407-Jun-201003:45x86
Databasemailprotocols.dll10.0.2781.042,85607-Jun-201003:45x86
Instmdw.sqlNiet van toepassing469,80605-Jun-201000:40Niet van toepassing
Instmsdb.sqlNiet van toepassing1,676,51804-Jun-201021:02Niet van toepassing
Mssqlsystemresource.ldfNiet van toepassing524,28805-Jun-201003:36Niet van toepassing
Mssqlsystemresource.mdfNiet van toepassing63,307,77605-Jun-201003:36Niet van toepassing
Queryactivityupload.dtsxNiet van toepassing680,10705-Jun-201000:40Niet van toepassing
Sql_engine_core_inst_keyfile.dll2007.100.2781.013,67207-Jun-201004:26x86
Sqlaccess.dll2007.100.2781.0405,35207-Jun-201005:32x86
Sqlagent.exe2007.100.2781.0367,46407-Jun-201005:32x86
Sqlagent100_msdb_upgrade.sqlNiet van toepassing1,790,63905-Jun-201000:21Niet van toepassing
Sqlctr100.dll2007.100.2781.072,55207-Jun-201005:32x86
Sqlscriptdowngrade.dll2007.100.2781.014,69607-Jun-201005:33x86
Sqlscriptupgrade.dll2007.100.2781.03,380,07207-Jun-201005:33x86
Sqlservr.exe2007.100.2781.042,745,19207-Jun-201005:33x86
Sqsrvres.dll2007.100.2781.089,96007-Jun-201005:33x86
Xpstar.dll2007.100.2781.0300,90407-Jun-201005:36x86
X64-versie van SQL Server 2008
BestandsnaamBestandsversieBestandsgrootteDatumTijdPlatform
Databasemailengine.dll10.0.2781.075,62406-Jun-201004:15x86
Databasemailprotocols.dll10.0.2781.042,85606-Jun-201004:15x86
Instmdw.sqlNiet van toepassing469,80605-Jun-201000:40Niet van toepassing
Instmsdb.sqlNiet van toepassing1,676,51804-Jun-201021:02Niet van toepassing
Mssqlsystemresource.ldfNiet van toepassing524,28805-Jun-201003:36Niet van toepassing
Mssqlsystemresource.mdfNiet van toepassing63,307,77605-Jun-201003:36Niet van toepassing
Queryactivityupload.dtsxNiet van toepassing680,10705-Jun-201000:40Niet van toepassing
Sql_engine_core_inst_keyfile.dll2007.100.2781.014,18406-Jun-201004:36x64
Sqlaccess.dll2007.100.2781.0412,00806-Jun-201005:16x86
Sqlagent.exe2007.100.2781.0427,88006-Jun-201005:16x64
Sqlagent100_msdb_upgrade.sqlNiet van toepassing1,790,63905-Jun-201000:21Niet van toepassing
Sqlctr100.dll2007.100.2781.0108,39206-Jun-201005:16x64
Sqlctr100.dll2007.100.2781.072,55207-Jun-201005:32x86
Sqlscriptdowngrade.dll2007.100.2781.015,72006-Jun-201005:18x64
Sqlscriptupgrade.dll2007.100.2781.03,379,56006-Jun-201005:18x64
Sqlservr.exe2007.100.2781.057,893,22406-Jun-201005:18x64
Sqsrvres.dll2007.100.2781.0105,83206-Jun-201005:18x64
Xpstar.dll2007.100.2781.0546,66406-Jun-201005:19x64
SQL Server 2008, Itanium-architectuur-versie
BestandsnaamBestandsversieBestandsgrootteDatumTijdPlatform
Databasemailengine.dll10.0.2781.075,62406-Jun-201012:33x86
Databasemailprotocols.dll10.0.2781.042,85606-Jun-201012:33x86
Instmdw.sqlNiet van toepassing469,80605-Jun-201000:40Niet van toepassing
Instmsdb.sqlNiet van toepassing1,676,51804-Jun-201021:02Niet van toepassing
Mssqlsystemresource.ldfNiet van toepassing524,28805-Jun-201003:36Niet van toepassing
Mssqlsystemresource.mdfNiet van toepassing63,307,77605-Jun-201003:36Niet van toepassing
Queryactivityupload.dtsxNiet van toepassing680,10705-Jun-201000:40Niet van toepassing
Sql_engine_core_inst_keyfile.dll2007.100.2781.019,30406-Jun-201012:53IA-64
Sqlaccess.dll2007.100.2781.0398,69606-Jun-201013:33x86
Sqlagent.exe2007.100.2781.01,203,04806-Jun-201013:33IA-64
Sqlagent100_msdb_upgrade.sqlNiet van toepassing1,790,63905-Jun-201000:21Niet van toepassing
Sqlctr100.dll2007.100.2781.0135,01606-Jun-201013:33IA-64
Sqlctr100.dll2007.100.2781.072,55207-Jun-201005:32x86
Sqlscriptdowngrade.dll2007.100.2781.020,84006-Jun-201013:35IA-64
Sqlscriptupgrade.dll2007.100.2781.03,385,70406-Jun-201013:35IA-64
Sqlservr.exe2007.100.2781.0111,051,11206-Jun-201013:35IA-64
Sqsrvres.dll2007.100.2781.0187,75206-Jun-201013:35IA-64
Xpstar.dll2007.100.2781.0936,80806-Jun-201013:36IA-64

Status


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

Referenties


Voor meer informatie over de incrementele Servicing-Model voor SQL Server, klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base:

935897 Een incrementele Servicing-Model is beschikbaar in de SQL Server-team voor het leveren van hotfixes voor gemelde problemen


Voor meer informatie over het naamgevingsschema voor SQL Server-updates klikt u op het volgende artikel in de Microsoft Knowledge Base:

822499 Nieuw naamgevingsschema voor software-updatepakketten voor Microsoft SQL Server

Voor meer informatie over terminologie voor software-updates klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
824684 beschrijving van de standaardterminologie die wordt gebruikt om software-updates voor Microsoft te beschrijven