Dela via


MSSQLSERVER_844

gäller för:SQL Server

Detaljer

Egenskap Värde
Produktnamn SQL Server
Händelse-ID 844
Händelsekälla MSSQLSERVER
Komponent SQLEngine
Symboliskt namn BUFLATCH_TIMEOUT_CONTINUE
Meddelandetext Timeout inträffade i väntan på buffertspärr – typ %d, bp %p, sida %d:%d, stat %#x, databas-ID: %d, allokeringsenhets-ID: %I64d%ls, uppgiftsprocess 0x%p: %d, väntetid %d sekunder, flaggsystem 0x%I64x, innehavande process 0x%p. Fortsätter att vänta. %ls

Förklaring

En SQL-process väntar på att hämta en spärr. Det här problemet kan orsakas av att en I/O-åtgärd tar för lång tid att slutföra. Normalt är den här typen av fel resultatet av andra uppgifter som blockerar systemprocesser. I vissa fall kan det här felet orsakas av maskinvarufel. När det här felmeddelandet inträffar kanske du märker att datorn och SQL Server slutar svara.

Orsak

Det här felmeddelandet är beroende av systemets övergripande miljö. Någon av följande omständigheter kan leda till ett överstressat system:

  • Maskinvara som inte uppfyller dina behov av indata/utdata (I/O) och minne
  • Felaktigt konfigurerade och testade inställningar
  • Ineffektiv design

Du kan se fel 844 när systemet är hårt belastat och inte kan uppfylla arbetsbelastningskraven. Några av de vanligaste orsakerna till en stressad miljö är:

  • Maskinvaruproblem
  • Komprimerade volymer
  • Konfigurationsinställningar för SQL Server som inte är standard
  • Ineffektiva frågor eller indexdesign
  • Frekventa autosparåtgärder för databasåterväxt eller autoshrink

Användaråtgärd

Försök med följande för att förhindra att det här felet inträffar:

  • Kontrollera om du har några flaskhalsar i maskinvaran. Se Identifiera flaskhalsar för ett bra ställe att börja på. Om det behövs uppgraderar du maskinvaran så att den kan tillgodose behoven i din miljös konfiguration, frågor och belastning.

  • Kontrollera att alla maskinvarufunktioner fungerar korrekt. Kontrollera om det finns loggade fel och kör diagnostik som tillhandahålls av maskinvaruleverantören. Sök efter associerade I/O-fel i felloggen eller händelseloggen. I/O-fel pekar vanligtvis på ett diskfel.

  • Kontrollera att diskvolymerna inte komprimeras. Lagring av data och loggfiler på komprimerade enheter stöds inte. Mer information finns i Databasfiler och filgrupper. Mer information om stöd för komprimerade enheter finns i följande artikel: Beskrivning av stöd för SQL Server-databaser på komprimerade volymer

  • Se om felmeddelandena försvinner när du inaktiverar alla följande konfigurationsalternativ för SQL Server:

  • Justera frågor för att minska de resurser som används i systemet. Prestandajustering hjälper till att minska belastningen på ett system och förbättra svarstiden för enskilda frågor

  • Ange egenskapen autoshrink till OFF för att minska kostnaderna för ändringar i databasens storlek

  • Se till att du anger egenskapen autogrow till steg som är tillräckligt stora för att vara ovanliga. Schemalägg ett jobb för att kontrollera det tillgängliga utrymmet i dina databaser och öka sedan databasens storlek under låg belastning.

  • Kontrollera felloggen för icke-givande uppgifter och andra kritiska fel. Lös dessa fel först eftersom de kan peka på rotorsaken till det underliggande problemet.

  • Om kritiska fel, till exempel påståenden ofta inträffar, kan du lösa dessa problem.

  • Om 844-felmeddelandena är ovanliga kan du ignorera felen.