Udostępnij za pomocą


sys.dm_db_wait_stats

Dotyczy do:Azure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w Microsoft Fabric

Zwraca informacje o wszystkich oczekiwaniach napotkanych przez wątki wykonywane podczas operacji. Ten zagregowany widok służy do diagnozowania problemów z wydajnością, a także z określonymi zapytaniami i partiami.

Określone typy czasów oczekiwania podczas wykonywania zapytania mogą wskazywać wąskie gardła lub punkty wstrzymania w zapytaniu. Podobnie, wysokie czasy oczekiwania lub liczniki oczekiwania na całym serwerze mogą wskazywać wąskie gardła lub punkty aktywne w interakcjach z zapytaniami interakcji w wystąpieniu serwera. Na przykład oczekiwanie na blokadę wskazuje rywalizację o dane według zapytań; oczekiwania na zatrzaśnięć strony wskazują wolne czasy odpowiedzi we/wy; oczekiwania na aktualizację zatrzaśnięć strony wskazują nieprawidłowy układ pliku.

Nazwa kolumny Typ danych Description
wait_type nvarchar(60) Nazwa typu oczekiwania. Aby uzyskać więcej informacji, zobacz Typy oczekiwania.
waiting_tasks_count bigint Liczba oczekiwań dla tego typu oczekiwania. Ten licznik jest zwiększany na początku każdego oczekiwania.
wait_time_ms bigint Łączny czas oczekiwania dla tego typu oczekiwania w milisekundach. Ten czas obejmuje wartość signal_wait_time_ms.
max_wait_time_ms bigint Maksymalny czas oczekiwania dla tego typu oczekiwania.
signal_wait_time_ms bigint Różnica między czasem, w którym zasygnalizowano wątek oczekiwania i kiedy zaczął działać.

Uwagi

  • Ten dynamiczny widok zarządzania wyświetla tylko dane dla bieżącej bazy danych.

  • Ten dynamiczny widok zarządzania pokazuje czas oczekiwania na ukończenie. Nie pokazuje bieżących oczekiwań.

  • Liczniki są resetowane do zera za każdym razem, gdy baza danych zostanie przeniesiona lub przełączona w tryb offline.

  • Wątek procesu roboczego programu SQL Server nie jest uważany za oczekujące, jeśli którykolwiek z następujących elementów jest spełniony:

    • Zasób staje się dostępny.

    • Kolejka nie jest niczego.

    • Proces zewnętrzny zostanie zakończony.

Uwaga / Notatka

Te statystyki nie są utrwalane po zdarzeniach trybu failover, a wszystkie dane są skumulowane od czasu ostatniego zresetowania statystyk lub uruchomienia aparatu bazy danych. Użyj kolumny sqlserver_start_time w sys.dm_os_sys_info , aby znaleźć ostatni czas uruchamiania aparatu bazy danych.

Permissions

Wymaga uprawnienia WYŚWIETL STAN BAZY DANYCH w bazie danych.

Typy oczekiwania

Oczekiwania na zasoby

Zasób czeka, gdy proces roboczy żąda dostępu do zasobu, który jest niedostępny, ponieważ zasób jest używany przez innego procesu roboczego lub nie jest jeszcze dostępny. Przykłady oczekiwania na zasoby to: blokady, zatrzaski, sieć i oczekiwania we/wy dysku. Oczekiwania na blokadę i zatrzaski są oczekiwania na obiekty synchronizacji.

Oczekiwanie w kolejce

Oczekiwanie na kolejkę występuje, gdy proces roboczy jest w stanie bezczynności, czekając na przypisanie pracy. Oczekiwania kolejek są najczęściej spotykane z zadaniami w tle systemu, takimi jak monitor zakleszczenia i usunięte zadania oczyszczania rekordów. Te zadania oczekują na umieszczenie żądań pracy w kolejce roboczej. Oczekiwania kolejek mogą również okresowo stać się aktywne, nawet jeśli w kolejce nie zostały umieszczone żadne nowe pakiety.

Oczekiwania zewnętrzne

Oczekiwania zewnętrzne występują, gdy proces roboczy programu SQL Server oczekuje na zdarzenie zewnętrzne, takie jak rozszerzone wywołanie procedury składowanej lub zapytanie połączonego serwera, aby zakończyć. Podczas diagnozowania problemów z blokowaniem należy pamiętać, że oczekiwania zewnętrzne nie zawsze oznaczają, że proces roboczy jest bezczynny, ponieważ proces roboczy może aktywnie uruchamiać kod zewnętrzny.

Oczekiwania

Mimo że wątek nie czeka już, wątek nie musi natychmiast uruchamiać się. Dzieje się tak dlatego, że taki wątek jest najpierw umieszczany w kolejce procesów roboczych z możliwością uruchamiania i musi czekać na uruchomienie kwantu w harmonogramie.

W programie SQL Server liczniki czasu oczekiwania są wartościami bigint i dlatego nie są tak podatne na przerzucanie, jak równoważne liczniki we wcześniejszych wersjach programu SQL Server.

W poniższej tabeli wymieniono typy oczekiwania napotkane przez zadania.

Typ oczekiwania Description
ABR Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
ASSEMBLY_LOAD Występuje podczas wyłącznego dostępu do ładowania zestawu.
ASYNC_DISKPOOL_LOCK Występuje w przypadku próby zsynchronizowania równoległych wątków, które wykonują zadania, takie jak tworzenie lub inicjowanie pliku.
ASYNC_IO_COMPLETION Występuje, gdy zadanie oczekuje na zakończenie operacji we/wy.
ASYNC_NETWORK_IO Występuje w zapisach sieciowych, gdy zadanie jest zablokowane za siecią. Sprawdź, czy klient przetwarza dane z serwera.
AUDIT_GROUPCACHE_LOCK Występuje, gdy istnieje oczekiwanie na blokadę, która kontroluje dostęp do specjalnej pamięci podręcznej. Pamięć podręczna zawiera informacje o tym, które inspekcje są używane do inspekcji każdej grupy akcji inspekcji.
AUDIT_LOGINCACHE_LOCK Występuje, gdy istnieje oczekiwanie na blokadę, która kontroluje dostęp do specjalnej pamięci podręcznej. Pamięć podręczna zawiera informacje na temat inspekcji używanych do inspekcji grup akcji inspekcji logowania.
AUDIT_ON_DEMAND_TARGET_LOCK Występuje, gdy istnieje oczekiwanie na blokadę, która jest używana w celu zapewnienia pojedynczej inicjalizacji powiązanych z inspekcją elementów docelowych zdarzeń rozszerzonych.
AUDIT_XE_SESSION_MGR Występuje, gdy istnieje oczekiwanie na blokadę używaną do synchronizowania uruchamiania i zatrzymywania sesji zdarzeń rozszerzonych związanych z inspekcją.
BACKUP Występuje, gdy zadanie jest blokowane w ramach przetwarzania kopii zapasowej.
BACKUP_OPERATOR Występuje, gdy zadanie czeka na instalację taśmy.
BACKUPBUFFER Występuje, gdy zadanie tworzenia kopii zapasowej oczekuje na dane lub oczekuje na bufor, w którym mają być przechowywane dane. Ten typ nie jest typowy, z wyjątkiem sytuacji, gdy zadanie czeka na instalację taśmy.
BACKUPIO Występuje, gdy zadanie tworzenia kopii zapasowej oczekuje na dane lub oczekuje na bufor, w którym mają być przechowywane dane. Ten typ nie jest typowy, z wyjątkiem sytuacji, gdy zadanie czeka na instalację taśmy.
BACKUPTHREAD Występuje, gdy zadanie oczekuje na zakończenie zadania tworzenia kopii zapasowej. Czas oczekiwania może być długi, od kilku minut do kilku godzin. Jeśli zadanie, na które czekasz, znajduje się w procesie we/wy, ten typ nie wskazuje problemu.
BAD_PAGE_PROCESS Występuje, gdy podejrzany rejestrator stron w tle próbuje uniknąć uruchamiania więcej niż co pięć sekund. Nadmierne podejrzane strony powodują częste uruchamianie rejestratora.
BROKER_CONNECTION_RECEIVE_TASK Występuje podczas oczekiwania na odebranie komunikatu w punkcie końcowym połączenia. Odbieranie dostępu do punktu końcowego jest serializowane.
BROKER_ENDPOINT_STATE_MUTEX Występuje, gdy występuje rywalizacja o dostęp do stanu punktu końcowego połączenia usługi Service Broker. Dostęp do stanu zmian jest serializowany.
BROKER_EVENTHANDLER Występuje, gdy zadanie oczekuje w podstawowej procedurze obsługi zdarzeń brokera usług. Powinno to nastąpić bardzo krótko.
BROKER_INIT Występuje podczas inicjowania usługi Service Broker w każdej aktywnej bazie danych. Powinno się to zdarzyć rzadko.
BROKER_MASTERSTART Występuje, gdy zadanie oczekuje na uruchomienie podstawowego programu obsługi zdarzeń brokera usług. Powinno to nastąpić bardzo krótko.
BROKER_RECEIVE_WAITFOR Występuje, gdy oczekiwanie NA ODBIERZ WAITFOR. Jest to typowe, jeśli żadne komunikaty nie są gotowe do odebrania.
BROKER_REGISTERALLENDPOINTS Występuje podczas inicjowania punktu końcowego połączenia usługi Service Broker. Powinno to nastąpić bardzo krótko.
BROKER_SERVICE Występuje, gdy lista docelowa usługi Service Broker skojarzona z usługą docelową jest aktualizowana lub zmieniana priorytetowo.
BROKER_SHUTDOWN Występuje w przypadku planowanego zamknięcia usługi Service Broker. Powinno się to zdarzyć bardzo krótko, jeśli w ogóle.
BROKER_TASK_STOP Występuje, gdy program obsługi zadań kolejki usługi Service Broker próbuje zamknąć zadanie. Sprawdzanie stanu jest serializowane i musi być w stanie uruchomienia wcześniej.
BROKER_TO_FLUSH Występuje, gdy usługa Service Broker leniwie opróżnia obiekty transmisji w pamięci do tabeli roboczej.
BROKER_TRANSMITTER Występuje, gdy nadajnik usługi Service Broker czeka na pracę.
BUILTIN_HASHKEY_MUTEX Może wystąpić po uruchomieniu wystąpienia, podczas gdy wewnętrzne struktury danych są inicjowane. Nie będzie powtarzać się po zainicjowaniu struktur danych.
CHECK_PRINT_RECORD Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
CHECKPOINT_QUEUE Występuje, gdy zadanie punktu kontrolnego oczekuje na następne żądanie punktu kontrolnego.
CHKPT Występuje podczas uruchamiania serwera, aby poinformować wątek punktu kontrolnego, że można go uruchomić.
CLEAR_DB Występuje podczas operacji, które zmieniają stan bazy danych, takie jak otwieranie lub zamykanie bazy danych.
CLR_AUTO_EVENT Występuje, gdy zadanie wykonuje obecnie wykonywanie środowiska uruchomieniowego języka wspólnego (CLR) i oczekuje na zainicjowanie określonego autoeventu. Długie oczekiwania są typowe i nie wskazują problemu.
CLR_CRST Występuje, gdy zadanie wykonuje obecnie wykonywanie środowiska CLR i oczekuje na wprowadzenie krytycznej sekcji zadania, które jest obecnie używane przez inne zadanie.
CLR_JOIN Występuje, gdy zadanie wykonuje obecnie wykonywanie środowiska CLR i oczekuje na zakończenie innego zadania. Ten stan oczekiwania występuje, gdy istnieje sprzężenia między zadaniami.
CLR_MANUAL_EVENT Występuje, gdy zadanie wykonuje obecnie wykonywanie środowiska CLR i oczekuje na zainicjowanie określonego zdarzenia ręcznego.
CLR_MEMORY_SPY Występuje podczas oczekiwania na pozyskiwanie blokady dla struktury danych używanej do rejestrowania wszystkich alokacji pamięci wirtualnej pochodzących z środowiska CLR. Struktura danych jest zablokowana w celu zachowania integralności, jeśli istnieje dostęp równoległy.
CLR_MONITOR Występuje, gdy zadanie wykonuje obecnie wykonywanie środowiska CLR i oczekuje na uzyskanie blokady na monitorze.
CLR_RWLOCK_READER Występuje, gdy zadanie wykonuje obecnie wykonywanie środowiska CLR i oczekuje na blokadę czytnika.
CLR_RWLOCK_WRITER Występuje, gdy zadanie wykonuje obecnie wykonywanie środowiska CLR i oczekuje na blokadę modułu zapisywania.
CLR_SEMAPHORE Występuje, gdy zadanie wykonuje obecnie wykonywanie CLR i oczekuje na semafor.
CLR_TASK_START Występuje podczas oczekiwania na ukończenie uruchamiania zadania CLR.
CLRHOST_STATE_ACCESS Występuje, gdy istnieje oczekiwanie na uzyskanie wyłącznego dostępu do struktur danych hostingu CLR. Ten typ oczekiwania występuje podczas konfigurowania lub usuwania środowiska uruchomieniowego CLR.
CMEMTHREAD Występuje, gdy zadanie oczekuje na obiekt pamięci bezpiecznej wątkowo. Czas oczekiwania może wzrosnąć, gdy występuje rywalizacja spowodowana przez wiele zadań próbujących przydzielić pamięć z tego samego obiektu pamięci.
CXPACKET Występuje podczas próby zsynchronizowania iteratora procesora zapytań. Można rozważyć obniżenie stopnia równoległości, jeśli rywalizacja o ten typ oczekiwania stanie się problemem.
CXROWSET_SYNC Występuje podczas skanowania w zakresie równoległym.
DAC_INIT Występuje podczas inicjowania dedykowanego połączenia administratora.
DBMIRROR_DBM_EVENT Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
DBMIRROR_DBM_MUTEX Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
DBMIRROR_EVENTS_QUEUE Występuje, gdy dublowanie bazy danych czeka na przetwarzanie zdarzeń.
DBMIRROR_SEND Występuje, gdy zadanie oczekuje na listę prac komunikacji w warstwie sieciowej, aby wyczyścić możliwość wysyłania komunikatów. Wskazuje, że warstwa komunikacji zaczyna się przeciążać i wpływa na przepływność danych dublowania bazy danych.
DBMIRROR_WORKER_QUEUE Wskazuje, że zadanie procesu roboczego dublowania bazy danych oczekuje na więcej pracy.
DBMIRRORING_CMD Występuje, gdy zadanie oczekuje na opróżnienie rekordów dziennika na dysk. Oczekuje się, że ten stan oczekiwania będzie przechowywany przez długi czas.
DEADLOCK_ENUM_MUTEX Występuje, gdy monitor zakleszczenia i sys.dm_os_waiting_tasks spróbuj upewnić się, że program SQL Server nie uruchamia wielu zakleszczeń wyszukiwania w tym samym czasie.
DEADLOCK_TASK_SEARCH Duży czas oczekiwania na ten zasób wskazuje, że serwer wykonuje zapytania na platformie sys.dm_os_waiting_tasks, a te zapytania blokują monitorowanie zakleszczenia przed uruchomieniem wyszukiwania zakleszczenia. Ten typ oczekiwania jest używany tylko przez monitor zakleszczenia. Zapytania dotyczące sys.dm_os_waiting_tasks DEADLOCK_ENUM_MUTEX użycia.
DEBUGOWAĆ Występuje podczas debugowania Transact-SQL i CLR na potrzeby synchronizacji wewnętrznej.
DISABLE_VERSIONING Występuje, gdy program SQL Server sonduje menedżera transakcji wersji, aby sprawdzić, czy sygnatura czasowa najwcześniejszej aktywnej transakcji jest późniejsza niż sygnatura czasowa zmiany stanu. W takim przypadku wszystkie transakcje migawek, które zostały uruchomione przed uruchomieniem instrukcji ALTER DATABASE, zostały zakończone. Ten stan oczekiwania jest używany, gdy program SQL Server wyłącza przechowywanie wersji przy użyciu instrukcji ALTER DATABASE.
DISKIO_SUSPEND Występuje, gdy zadanie oczekuje na dostęp do pliku, gdy zewnętrzna kopia zapasowa jest aktywna. Jest to zgłaszane dla każdego procesu oczekiwania użytkownika. Liczba większa niż pięć na proces użytkownika może wskazywać, że zakończenie zewnętrznej kopii zapasowej zajmuje zbyt dużo czasu.
DISPATCHER_QUEUE_SEMAPHORE Występuje, gdy wątek z puli dyspozytora oczekuje na więcej pracy do przetworzenia. Oczekuje się, że czas oczekiwania dla tego typu oczekiwania wzrośnie, gdy dyspozytor jest w stanie bezczynności.
DLL_LOADING_MUTEX Występuje raz podczas oczekiwania na załadowanie biblioteki DLL analizatora XML.
DROPTEMP Występuje między próbami porzucenia obiektu tymczasowego, jeśli poprzednia próba nie powiodła się. Czas oczekiwania rośnie wykładniczo z każdą nieudaną próbą upuszczania.
DTC Występuje, gdy zadanie oczekuje na zdarzenie używane do zarządzania przejściem stanu. Ten stan kontroluje, gdy odzyskiwanie transakcji koordynatora transakcji rozproszonych firmy Microsoft (MS DTC) występuje po otrzymaniu przez program SQL Server powiadomienia, że usługa MS DTC stała się niedostępna.

W tym stanie opisano również zadanie oczekujące, gdy zatwierdzenie transakcji MS DTC jest inicjowane przez program SQL Server, a program SQL Server czeka na zakończenie zatwierdzenia MS DTC.
DTC_ABORT_REQUEST Występuje w sesji procesu roboczego USŁUGI MS DTC, gdy sesja oczekuje na przejęcie własności transakcji MS DTC. Gdy usługa MS DTC jest właścicielem transakcji, sesja może wycofać transakcję. Ogólnie rzecz biorąc, sesja czeka na inną sesję, która korzysta z transakcji.
DTC_RESOLVE Występuje, gdy zadanie odzyskiwania oczekuje na master bazę danych w transakcji obejmującej wiele baz danych, aby zadanie może wykonać zapytanie dotyczące wyniku transakcji.
DTC_STATE Występuje, gdy zadanie oczekuje na zdarzenie, które chroni zmiany w wewnętrznym obiekcie stanu globalnego USŁUGI MS DTC. Ten stan powinien być przechowywany przez bardzo krótki czas.
DTC_TMDOWN_REQUEST Występuje w sesji procesu roboczego USŁUGI MS DTC, gdy program SQL Server otrzymuje powiadomienie, że usługa MS DTC jest niedostępna. Najpierw proces roboczy czeka na uruchomienie procesu odzyskiwania usługi MS DTC. Następnie proces roboczy czeka na uzyskanie wyniku transakcji rozproszonej, nad którą pracuje proces roboczy. Może to być kontynuowane do momentu ponownego opublikowania połączenia z usługą MS DTC.
DTC_WAITFOR_OUTCOME Występuje, gdy zadania odzyskiwania oczekują, aż usługa MS DTC stanie się aktywna, aby umożliwić rozpoznawanie przygotowanych transakcji.
DUMP_LOG_COORDINATOR Występuje, gdy główne zadanie czeka na podzadanie w celu wygenerowania danych. Zazwyczaj ten stan nie występuje. Długie oczekiwanie wskazuje nieoczekiwaną blokadę. Należy zbadać podzadanie.
DUMPTRIGGER Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
Komisja Europejska Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
EE_PMOLOCK Występuje podczas synchronizacji niektórych typów alokacji pamięci podczas wykonywania instrukcji.
EE_SPECPROC_MAP_INIT Występuje podczas synchronizacji tworzenia tabeli skrótów procedur wewnętrznych. To oczekiwanie może wystąpić tylko podczas początkowego uzyskiwania dostępu do tabeli skrótów po uruchomieniu wystąpienia programu SQL Server.
ENABLE_VERSIONING Występuje, gdy program SQL Server czeka na zakończenie wszystkich transakcji aktualizacji w tej bazie danych przed zadeklarowaniem bazy danych gotowej do przejścia na izolację migawki dozwolony stan. Ten stan jest używany, gdy program SQL Server umożliwia izolację migawek przy użyciu instrukcji ALTER DATABASE.
ERROR_REPORTING_MANAGER Występuje podczas synchronizacji wielu współbieżnych inicjowania dziennika błędów.
WYMIENIAĆ Występuje podczas synchronizacji w procesorze zapytań wymieniać iterator podczas zapytań równoległych.
EXECSYNC Występuje podczas równoległych zapytań podczas synchronizowania w procesorze zapytań w obszarach, które nie są związane z iteratorem wymiany. Przykłady takich obszarów to mapy bitowe, duże obiekty binarne (LOB) i iterator buforu. LoB mogą często używać tego stanu oczekiwania.
EXECUTION_PIPE_EVENT_INTERNAL Występuje podczas synchronizacji między częściami producenta i konsumenta wykonywania wsadowego, które są przesyłane za pośrednictwem kontekstu połączenia.
PUNKT FAILPOINT Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
FCB_REPLICA_READ Występuje, gdy odczyty migawki (lub tymczasowej migawki utworzonej przez dbCC) są synchronizowane rozrzedzonych plików.
FCB_REPLICA_WRITE Występuje, gdy synchronizowane jest wypychanie lub ściąganie strony do migawki (lub tymczasowej migawki utworzonej przez plik DBCC).
FS_FC_RWLOCK Występuje, gdy istnieje oczekiwanie przez moduł odśmiecający element FILESTREAM, aby wykonać jedną z następujących czynności:

Wyłącz odzyskiwanie pamięci (używane przez tworzenie kopii zapasowej i przywracanie).

Wykonaj jeden cykl modułu odśmiecającego elementy FILESTREAM.
FS_GARBAGE_COLLECTOR_SHUTDOWN Występuje, gdy moduł odśmiecania elementów FILESTREAM oczekuje na ukończenie zadań oczyszczania.
FS_HEADER_RWLOCK Występuje, gdy istnieje oczekiwanie na uzyskanie dostępu do nagłówka FILESTREAM kontenera danych FILESTREAM w celu odczytu lub zaktualizowania zawartości w pliku nagłówka FILESTREAM (Filestream.hdr).
FS_LOGTRUNC_RWLOCK Występuje, gdy istnieje oczekiwanie na uzyskanie dostępu do obcinania dziennika FILESTREAM, aby wykonać jedną z następujących czynności:

Tymczasowo wyłącz obcinanie dziennika FILESTREAM (FSLOG) (używane przez tworzenie kopii zapasowych i przywracanie).

Wykonaj jeden cykl obcinania FSLOG.
FSA_FORCE_OWN_XACT Występuje, gdy operacja we/wy pliku FILESTREAM musi być powiązana z skojarzona transakcja, ale transakcja jest obecnie własnością innej sesji.
FSAGENT Występuje, gdy operacja we/wy pliku FILESTREAM oczekuje na zasób agenta FILESTREAM, który jest używany przez inną operację we/wy pliku.
FSTR_CONFIG_MUTEX Występuje, gdy istnieje oczekiwanie na zakończenie ponownej konfiguracji funkcji FILESTREAM.
FSTR_CONFIG_RWLOCK Występuje, gdy istnieje oczekiwanie na serializacji dostępu do parametrów konfiguracji FILESTREAM.
FT_METADATA_MUTEX Udokumentowane tylko w celach informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
FT_RESTART_CRAWL Występuje, gdy przeszukiwanie pełnotekstowe musi być uruchamiane ponownie z ostatniego znanego dobrego punktu w celu odzyskania sprawności po awarii przejściowej. Oczekiwanie umożliwia wykonywanie zadań roboczych aktualnie pracujących nad tym populacją w celu ukończenia lub zakończenia bieżącego kroku.
PROGRAM ZBIERAJĄCY PEŁNOTEKSTOWY Występuje podczas synchronizacji operacji pełnotekstowych.
OPIEKUN Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
HTTP_ENUMERATION Występuje podczas uruchamiania w celu wyliczenia punktów końcowych HTTP w celu uruchomienia protokołu HTTP.
HTTP_START Występuje, gdy połączenie oczekuje na ukończenie inicjowania protokołu HTTP.
IMPPROV_IOWAIT Występuje, gdy program SQL Server czeka na zakończenie operacji we/wy ładowania zbiorczego.
INTERNAL_TESTING Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
IO_AUDIT_MUTEX Występuje podczas synchronizacji zdarzeń śledzenia.
IO_COMPLETION Występuje podczas oczekiwania na ukończenie operacji we/wy. Ten typ oczekiwania zazwyczaj reprezentuje we/wy strony inne niż dane. Oczekiwania na ukończenie operacji we/wy strony danych są wyświetlane jako PAGEIOLATCH_* oczekiwania.
IO_QUEUE_LIMIT Występuje, gdy kolejka operacji we/wy asynchronicznej dla usługi Azure SQL Database ma zbyt wiele oczekujących operacji we/wy. Zadania próbujące wydać inne operacje we/wy są blokowane dla tego typu oczekiwania, aż liczba oczekujących operacji we/wy spadnie poniżej progu. Próg jest proporcjonalny do jednostek DTU przypisanych do bazy danych.
IO_RETRY Występuje, gdy operacja we/wy, taka jak odczyt lub zapis na dysku kończy się niepowodzeniem z powodu niewystarczającej ilości zasobów, a następnie jest ponawiana.
IOAFF_RANGE_QUEUE Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
KSOURCE_WAKEUP Używany przez zadanie sterowania usługą podczas oczekiwania na żądania z Programu Service Control Manager. Długie oczekiwania są oczekiwane i nie wskazują problemu.
KTM_ENLISTMENT Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
KTM_RECOVERY_MANAGER Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
KTM_RECOVERY_RESOLUTION Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
LATCH_DT Występuje podczas oczekiwania na zatrzask DT (niszczenie). Nie obejmuje to zatrzasków buforu ani zatrzasków transakcji. Lista LATCH_* oczekiwania jest dostępna w pliku sys.dm_os_latch_stats. Należy pamiętać, że sys.dm_os_latch_stats grupy LATCH_NL, LATCH_SH, LATCH_UP, LATCH_EX i LATCH_DT czekają razem.
LATCH_EX Występuje podczas oczekiwania na zatrzask EX (wyłączny). Nie obejmuje to zatrzasków buforu ani zatrzasków transakcji. Lista LATCH_* oczekiwania jest dostępna w pliku sys.dm_os_latch_stats. Należy pamiętać, że sys.dm_os_latch_stats grupy LATCH_NL, LATCH_SH, LATCH_UP, LATCH_EX i LATCH_DT czekają razem.
LATCH_KP Występuje podczas oczekiwania na zatrzasku kluczowego wskaźnika wydajności (zachowaj). Nie obejmuje to zatrzasków buforu ani zatrzasków transakcji. Lista LATCH_* oczekiwania jest dostępna w pliku sys.dm_os_latch_stats. Należy pamiętać, że sys.dm_os_latch_stats grupy LATCH_NL, LATCH_SH, LATCH_UP, LATCH_EX i LATCH_DT czekają razem.
LATCH_NL Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
LATCH_SH Występuje podczas oczekiwania na zatrzask SH (udział). Nie obejmuje to zatrzasków buforu ani zatrzasków transakcji. Lista LATCH_* oczekiwania jest dostępna w pliku sys.dm_os_latch_stats. Należy pamiętać, że sys.dm_os_latch_stats grupy LATCH_NL, LATCH_SH, LATCH_UP, LATCH_EX i LATCH_DT czekają razem.
LATCH_UP Występuje podczas oczekiwania na zatrzask up (aktualizacja). Nie obejmuje to zatrzasków buforu ani zatrzasków transakcji. Lista LATCH_* oczekiwania jest dostępna w pliku sys.dm_os_latch_stats. Należy pamiętać, że sys.dm_os_latch_stats grupy LATCH_NL, LATCH_SH, LATCH_UP, LATCH_EX i LATCH_DT czekają razem.
LAZYWRITER_SLEEP Występuje, gdy zadania z opóźnieniem są zawieszone. Jest to miara czasu spędzonego przez zadania w tle, które oczekują. Nie należy brać pod uwagę tego stanu, gdy szukasz straganów użytkownika.
LCK_M_BU Występuje, gdy zadanie oczekuje na uzyskanie blokady aktualizacji zbiorczej (BU). Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_IS Występuje, gdy zadanie oczekuje na uzyskanie blokady udostępnionej intencji (IS). Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_IU Występuje, gdy zadanie oczekuje na uzyskanie blokady aktualizacji intencji (IU). Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_IX Występuje, gdy zadanie oczekuje na uzyskanie blokady Intent Exclusive (IX). Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RIn_NL Występuje, gdy zadanie oczekuje na uzyskanie blokady NULL dla bieżącej wartości klucza, a blokada Wstaw zakres między bieżącym i poprzednim kluczem. Blokada o wartości NULL na kluczu to natychmiastowa blokada zwalniania. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RIn_S Występuje, gdy zadanie oczekuje na uzyskanie współużytkowanej blokady dla bieżącej wartości klucza i blokadę Wstaw zakres między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RIn_U Zadanie oczekuje na uzyskanie blokady aktualizacji dla bieżącej wartości klucza i blokady Wstaw zakres między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RIn_X Występuje, gdy zadanie oczekuje na uzyskanie blokady wyłącznej dla bieżącej wartości klucza i blokadę Wstaw zakres między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RS_S Występuje, gdy zadanie oczekuje na uzyskanie blokady udostępnionej dla bieżącej wartości klucza i blokada zakresu współużytkowanego między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RS_U Występuje, gdy zadanie oczekuje na uzyskanie blokady aktualizacji dla bieżącej wartości klucza i blokada zakresu aktualizacji między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RX_S Występuje, gdy zadanie oczekuje na uzyskanie blokady udostępnionej dla bieżącej wartości klucza, a blokada zakresu wyłącznego między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RX_U Występuje, gdy zadanie oczekuje na uzyskanie blokady aktualizacji dla bieżącej wartości klucza i blokada zakresu wyłączność między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_RX_X Występuje, gdy zadanie oczekuje na uzyskanie blokady wyłączność dla bieżącej wartości klucza i blokada zakresu wyłącznego między bieżącym i poprzednim kluczem. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_S Występuje, gdy zadanie oczekuje na uzyskanie udostępnionej blokady. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_SCH_M Występuje, gdy zadanie oczekuje na uzyskanie blokady modyfikowania schematu. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_SCH_S Występuje, gdy zadanie oczekuje na uzyskanie blokady udziału schematu. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_SIU Występuje, gdy zadanie oczekuje na uzyskanie blokady aktualizacji udostępnionej z intencją. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_SIX Występuje, gdy zadanie oczekuje na uzyskanie blokady z wyłącznym użyciem intencji udostępnionej. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_U Występuje, gdy zadanie oczekuje na uzyskanie blokady aktualizacji. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_UIX Występuje, gdy zadanie oczekuje na uzyskanie aktualizacji z blokadą wyłączną intencji. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LCK_M_X Występuje, gdy zadanie oczekuje na uzyskanie blokady wyłącznej. Aby uzyskać macierz zgodności blokady, zobacz sys.dm_tran_locks (Transact-SQL).
LOG_RATE_GOVERNOR Występuje, gdy baza danych oczekuje na zapisanie limitu przydziału w dzienniku.
LOGBUFFER Występuje, gdy zadanie czeka na miejsce w buforze dziennika w celu przechowywania rekordu dziennika. Stale wysokie wartości mogą wskazywać, że urządzenia dziennika nie mogą nadążyć za ilością dziennika generowanego przez serwer.
LOGGENERATION Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
LOGMGR Występuje, gdy zadanie oczekuje na zakończenie wszystkich zaległych operacji we/wy dziennika przed zamknięciem dziennika podczas zamykania bazy danych.
LOGMGR_FLUSH Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
LOGMGR_QUEUE Występuje, gdy zadanie modułu zapisywania dzienników czeka na żądania pracy.
LOGMGR_RESERVE_APPEND Występuje, gdy zadanie oczekuje, aby sprawdzić, czy obcięcie dziennika zwalnia miejsce w dzienniku, aby umożliwić zadaniu zapisywanie nowego rekordu dziennika. Rozważ zwiększenie rozmiaru plików dziennika dla bazy danych, której dotyczy problem, aby zmniejszyć to oczekiwanie.
LOWFAIL_MEMMGR_QUEUE Występuje podczas oczekiwania na dostępność pamięci do użycia.
MSQL_DQ Występuje, gdy zadanie oczekuje na zakończenie operacji zapytania rozproszonego. Służy to do wykrywania potencjalnych zakleszczeń aplikacji zestawu wielu aktywnych wyników (MARS). Oczekiwanie kończy się po zakończeniu wywołania zapytania rozproszonego.
MSQL_XACT_MGR_MUTEX Występuje, gdy zadanie oczekuje na uzyskanie własności menedżera transakcji sesji do wykonania operacji transakcji na poziomie sesji.
MSQL_XACT_MUTEX Występuje podczas synchronizacji użycia transakcji. Żądanie musi uzyskać mutex przed użyciem transakcji.
MSQL_XP Występuje, gdy zadanie czeka na zakończenie rozszerzonej procedury składowanej. Program SQL Server używa tego stanu oczekiwania, aby wykryć potencjalne zakleszczenia aplikacji MARS. Oczekiwanie zostaje zatrzymane po zakończeniu rozszerzonego wywołania procedury składowanej.
MSSEARCH Występuje podczas Full-Text wywołań wyszukiwania. To oczekiwanie kończy się po zakończeniu operacji pełnotekstowej. Nie wskazuje rywalizacji, ale raczej czasu trwania operacji pełnotekstowych.
NET_WAITFOR_PACKET Występuje, gdy połączenie oczekuje na pakiet sieciowy podczas odczytu sieciowego.
OLEDB Występuje, gdy program SQL Server wywołuje natywnego dostawcę OLE DB klienta programu SQL Server. Ten typ oczekiwania nie jest używany do synchronizacji. Zamiast tego wskazuje czas trwania wywołań dostawcy OLE DB.
ONDEMAND_TASK_QUEUE Występuje, gdy zadanie w tle czeka na żądania zadań systemowych o wysokim priorytcie. Długie czasy oczekiwania wskazują, że nie było żądań o wysokim priorytcie do przetworzenia i nie powinny powodować problemów.
PAGEIOLATCH_DT Występuje, gdy zadanie czeka na zatrzask buforu, który znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie Destroy. Długie oczekiwania mogą wskazywać na problemy z podsystemem dysków.
PAGEIOLATCH_EX Występuje, gdy zadanie czeka na zatrzask buforu, który znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie wyłącznym. Długie oczekiwania mogą wskazywać na problemy z podsystemem dysków.
PAGEIOLATCH_KP Występuje, gdy zadanie czeka na zatrzask buforu, który znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie Zachowaj. Długie oczekiwania mogą wskazywać na problemy z podsystemem dysków.
PAGEIOLATCH_NL Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
PAGEIOLATCH_SH Występuje, gdy zadanie czeka na zatrzask buforu, który znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie udostępnionym. Długie oczekiwania mogą wskazywać na problemy z podsystemem dysków.
PAGEIOLATCH_UP Występuje, gdy zadanie czeka na zatrzask buforu, który znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie aktualizacji. Długie oczekiwania mogą wskazywać na problemy z podsystemem dysków.
PAGELATCH_DT Występuje, gdy zadanie czeka na zatrzask buforu, który nie znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie Destroy.
PAGELATCH_EX Występuje, gdy zadanie czeka na zatrzask buforu, który nie znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie wyłącznym.
PAGELATCH_KP Występuje, gdy zadanie czeka na zatrzask buforu, który nie znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie Zachowaj.
PAGELATCH_NL Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
PAGELATCH_SH Występuje, gdy zadanie czeka na zatrzask buforu, który nie znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie udostępnionym.
PAGELATCH_UP Występuje, gdy zadanie czeka na zatrzask buforu, który nie znajduje się w żądaniu we/wy. Żądanie zatrzaszania jest w trybie aktualizacji.
PARALLEL_BACKUP_QUEUE Występuje podczas serializacji danych wyjściowych generowanych przez FUNKCJĘ RESTORE HEADERONLY, RESTORE FILELISTONLY lub RESTORE LABELONLY.
PREEMPTIVE_ABR Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
PREEMPTIVE_AUDIT_ACCESS_EVENTLOG Występuje, gdy harmonogram programu SQL Server Operating System (SQLOS) przełącza się do trybu preemptive w celu zapisania zdarzenia inspekcji w dzienniku zdarzeń systemu Windows.
PREEMPTIVE_AUDIT_ACCESS_SECLOG Występuje, gdy harmonogram programu SQLOS przełącza się w tryb preemptive w celu zapisania zdarzenia inspekcji w dzienniku zabezpieczeń systemu Windows.
PREEMPTIVE_CLOSEBACKUPMEDIA Występuje, gdy harmonogram programu SQLOS przełącza się w tryb preemptive w celu zamknięcia nośnika kopii zapasowej.
PREEMPTIVE_CLOSEBACKUPTAPE Występuje, gdy harmonogram programu SQLOS przełącza się w tryb preemptive w celu zamknięcia urządzenia kopii zapasowej taśmy.
PREEMPTIVE_CLOSEBACKUPVDIDEVICE Występuje, gdy harmonogram programu SQLOS przełącza się w tryb preemptive w celu zamknięcia wirtualnego urządzenia kopii zapasowej.
PREEMPTIVE_CLUSAPI_CLUSTERRESOURCECONTROL Występuje, gdy harmonogram programu SQLOS przełącza się w tryb preemptive w celu wykonywania operacji klastra trybu failover systemu Windows.
PREEMPTIVE_COM_COCREATEINSTANCE Występuje, gdy harmonogram SQLOS przełącza się do trybu wstępnego w celu utworzenia obiektu COM.
PREEMPTIVE_HADR_LEASE_MECHANISM Zawsze włączone planowanie menedżera dzierżawy grup dostępności na potrzeby diagnostyki CSS.
PREEMPTIVE_SOSTESTING Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
PREEMPTIVE_STRESSDRIVER Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
PREEMPTIVE_TESTING Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
PREEMPTIVE_XETESTING Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
PRINT_ROLLBACK_PROGRESS Służy do oczekiwania na zakończenie procesów użytkownika w bazie danych, która została przeniesiona przy użyciu klauzuli zakończenia ALTER DATABASE. Aby uzyskać więcej informacji, zobacz ALTER DATABASE (Transact-SQL).
PWAIT_HADR_CHANGE_NOTIFIER_TERMINATION_SYNC Występuje, gdy zadanie w tle oczekuje na zakończenie zadania w tle, które odbiera (za pośrednictwem sondowania) powiadomienia klastra trybu failover systemu Windows Server. Tylko do użytku wewnętrznego.
PWAIT_HADR_CLUSTER_INTEGRATION Operacja dołączania, zastępowania i/lub usuwania oczekuje na pobranie blokady zapisu na wewnętrznej liście zawsze włączonej (na przykład listy sieci, adresów sieciowych lub odbiorników grupy dostępności). Tylko do użytku wewnętrznego.
PWAIT_HADR_OFFLINE_COMPLETED Operacja zawsze włączonej grupy dostępności czeka na przejście docelowej grupy dostępności do trybu offline przed zniszczeniem obiektów klastra trybu failover systemu Windows Server.
PWAIT_HADR_ONLINE_COMPLETED Operacja zawsze włączonej grupy dostępności lub grupy dostępności trybu failover czeka na przejście docelowej grupy dostępności do trybu online.
PWAIT_HADR_POST_ONLINE_COMPLETED Operacja zawsze włączonej grupy dostępności czeka na zakończenie dowolnego zadania w tle, które zostało zaplanowane w ramach poprzedniego polecenia. Na przykład może istnieć zadanie w tle, które przenosi bazy danych dostępności do roli podstawowej. Drop AVAILABILITY GROUP DDL musi czekać na zakończenie tego zadania w tle, aby uniknąć warunków wyścigu.
PWAIT_HADR_WORKITEM_COMPLETED Wewnętrzne oczekiwanie przez wątek czekający na ukończenie zadania pracy asynchronicznego. Jest to oczekiwane oczekiwanie i jest przeznaczone do użycia CSS.
PWAIT_MD_LOGIN_STATS Występuje podczas wewnętrznej synchronizacji w metadanych dotyczących statystyk logowania.
PWAIT_MD_RELATION_CACHE Występuje podczas synchronizacji wewnętrznej w metadanych w tabeli lub indeksie.
PWAIT_MD_SERVER_CACHE Występuje podczas synchronizacji wewnętrznej w metadanych na serwerach połączonych.
PWAIT_MD_UPGRADE_CONFIG Występuje podczas synchronizacji wewnętrznej podczas uaktualniania konfiguracji szerokiego serwera.
PWAIT_METADATA_LAZYCACHE_RWLOCk Występuje podczas wewnętrznej synchronizacji w pamięci podręcznej metadanych wraz z iterowaniem indeksu lub statystyk w tabeli.
QPJOB_KILL Wskazuje, że asynchroniczna automatyczna aktualizacja statystyk została anulowana przez wywołanie funkcji KILL, ponieważ aktualizacja została uruchomiona. Wątek kończący jest zawieszony, czekając na rozpoczęcie nasłuchiwania poleceń KILL. Dobra wartość jest mniejsza niż jedna sekunda.
QPJOB_WAITFOR_ABORT Wskazuje, że asynchroniczna automatyczna aktualizacja statystyk została anulowana przez wywołanie funkcji KILL, gdy była uruchomiona. Aktualizacja została ukończona, ale jest zawieszona do momentu zakończenia koordynacji komunikatów wątku. Jest to zwykły, ale rzadki stan i powinien być bardzo krótki. Dobra wartość jest mniejsza niż jedna sekunda.
QRY_MEM_GRANT_INFO_MUTEX Występuje, gdy zarządzanie pamięcią wykonywania zapytań próbuje kontrolować dostęp do statycznej listy informacji o udzielaniu. Ten stan zawiera informacje dotyczące bieżących udzielonych i oczekujących żądań pamięci. Ten stan jest prostym stanem kontroli dostępu. Nigdy nie powinno być długiego oczekiwania na ten stan. Jeśli ten mutex nie zostanie zwolniony, wszystkie nowe zapytania korzystające z pamięci przestaną odpowiadać.
QUERY_ERRHDL_SERVICE_DONE Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
QUERY_EXECUTION_INDEX_SORT_EVENT_OPEN Występuje w niektórych przypadkach, gdy kompilacja indeksu tworzenia w trybie offline jest uruchamiana równolegle, a różne wątki robocze sortujące synchronizują dostęp do plików sortowania.
QUERY_NOTIFICATION_MGR_MUTEX Występuje podczas synchronizacji kolejki odzyskiwania pamięci w Menedżerze powiadomień o zapytaniach.
QUERY_NOTIFICATION_SUBSCRIPTION_MUTEX Występuje podczas synchronizacji stanu dla transakcji w powiadomieniach o zapytaniach.
QUERY_NOTIFICATION_TABLE_MGR_MUTEX Występuje podczas synchronizacji wewnętrznej w Menedżerze powiadomień zapytań.
QUERY_NOTIFICATION_UNITTEST_MUTEX Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
QUERY_OPTIMIZER_PRINT_MUTEX Występuje podczas synchronizacji produkcji danych wyjściowych diagnostycznych optymalizatora zapytań. Ten typ oczekiwania występuje tylko wtedy, gdy ustawienia diagnostyczne zostały włączone pod kierunkiem pomocy technicznej firmy Microsoft.
QUERY_TRACEOUT Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
QUERY_WAIT_ERRHDL_SERVICE Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
RECOVER_CHANGEDB Występuje podczas synchronizacji stanu bazy danych w ciepłej bazie danych rezerwowych.
REPL_CACHE_ACCESS Występuje podczas synchronizacji w pamięci podręcznej artykułu replikacji. Podczas tych oczekiwań czytnik dzienników replikacji jest blokowany, a instrukcje języka definicji danych (DDL) opublikowanej tabeli są blokowane.
REPL_SCHEMA_ACCESS Występuje podczas synchronizacji informacji o wersji schematu replikacji. Ten stan istnieje, gdy instrukcje DDL są wykonywane na zreplikowanym obiekcie, a gdy czytnik dzienników kompiluje lub używa schematu wersji na podstawie wystąpienia języka DDL.
REPLICA_WRITES Występuje, gdy zadanie czeka na ukończenie operacji zapisu strony w migawkach bazy danych lub replikach DBCC.
REQUEST_DISPENSER_PAUSE Występuje, gdy zadanie oczekuje na ukończenie wszystkich zaległych operacji we/wy, dzięki czemu we/wy do pliku można zablokować tworzenie kopii zapasowej migawki.
REQUEST_FOR_DEADLOCK_SEARCH Występuje, gdy monitor zakleszczenia czeka na rozpoczęcie następnego wyszukiwania zakleszczenia. To oczekiwanie jest oczekiwane między wykryciem zakleszczenia, a długi całkowity czas oczekiwania na ten zasób nie wskazuje problemu.
RESMGR_THROTTLED Występuje, gdy pojawia się nowe żądanie i jest ograniczane na podstawie ustawienia GROUP_MAX_REQUESTS.
RESOURCE_QUEUE Występuje podczas synchronizacji różnych kolejek zasobów wewnętrznych.
RESOURCE_SEMAPHORE Występuje, gdy nie można natychmiast udzielić żądania pamięci zapytania z powodu innych współbieżnych zapytań. Wysokie oczekiwania i czasy oczekiwania mogą wskazywać na nadmierną liczbę współbieżnych zapytań lub nadmierne ilości żądań pamięci.
RESOURCE_SEMAPHORE_MUTEX Występuje, gdy zapytanie czeka na spełnienie żądania rezerwacji wątku. Występuje również podczas synchronizowania żądań kompilowania zapytań i udzielania pamięci.
RESOURCE_SEMAPHORE_QUERY_COMPILE Występuje, gdy liczba współbieżnych kompilacji zapytań osiągnie limit ograniczania przepustowości. Wysokie oczekiwania i czasy oczekiwania mogą wskazywać na nadmierne kompilacje, ponowne kompilowania lub nieznośne plany.
RESOURCE_SEMAPHORE_SMALL_QUERY Występuje, gdy nie można natychmiast udzielić żądania pamięci przez małe zapytanie z powodu innych współbieżnych zapytań. Czas oczekiwania nie powinien przekraczać więcej niż kilka sekund, ponieważ serwer przesyła żądanie do głównej puli pamięci zapytań, jeśli nie udzieli żądanej pamięci w ciągu kilku sekund. Wysokie oczekiwania mogą wskazywać na nadmierną liczbę współbieżnych małych zapytań, podczas gdy główna pula pamięci jest blokowana przez oczekujące zapytania.
SE_REPL_CATCHUP_THROTTLE Występuje, gdy transakcja oczekuje na postęp jednej z drugich baz danych.
SE_REPL_COMMIT_ACK Występuje, gdy transakcja oczekuje na potwierdzenie zatwierdzenia kworum z replik pomocniczych.
SE_REPL_COMMIT_TURN Występuje, gdy transakcja oczekuje na zatwierdzenie po otrzymaniu potwierdzenia zatwierdzenia kworum.
SE_REPL_ROLLBACK_ACK Występuje, gdy transakcja oczekuje na potwierdzenie wycofania kworum z replik pomocniczych.
SE_REPL_SLOW_SECONDARY_THROTTLE Występuje, gdy wątek czeka na jedną z replik pomocniczych bazy danych.
SEC_DROP_TEMP_KEY Występuje po nieudanej próbie porzucenia tymczasowego klucza zabezpieczeń przed ponowną próbą.
SECURITY_MUTEX Występuje, gdy istnieje oczekiwanie na elementy mutex, które kontrolują dostęp do globalnej listy dostawców usług kryptograficznych Extensible Key Management (EKM) i listy sesji EKM w zakresie sesji.
SEQUENTIAL_GUID Występuje podczas uzyskiwania nowego sekwencyjnego identyfikatora GUID.
SERVER_IDLE_CHECK Występuje podczas synchronizacji stanu bezczynności wystąpienia programu SQL Server, gdy monitor zasobów próbuje zadeklarować wystąpienie programu SQL Server jako bezczynne lub próbuje wznawiać działanie.
SHUTDOWN Występuje, gdy instrukcja shutdown czeka na zakończenie aktywnych połączeń.
SLEEP_BPOOL_FLUSH Występuje, gdy punkt kontrolny ogranicza wystawianie nowych operacji we/wy w celu uniknięcia powodzi podsystemu dysku.
SLEEP_DBSTARTUP Występuje podczas uruchamiania bazy danych podczas oczekiwania na odzyskanie wszystkich baz danych.
SLEEP_DCOMSTARTUP Występuje co najwyżej podczas uruchamiania wystąpienia programu SQL Server podczas oczekiwania na ukończenie inicjowania modelu DCOM.
SLEEP_MSDBSTARTUP Występuje, gdy funkcja śledzenia SQL czeka na zakończenie uruchamiania bazy danych msdb.
SLEEP_SYSTEMTASK Występuje podczas uruchamiania zadania w tle podczas oczekiwania na ukończenie uruchamiania bazy danych tempdb.
SLEEP_TASK Występuje, gdy zadanie zostanie uśpiene podczas oczekiwania na wystąpienie zdarzenia ogólnego.
SLEEP_TEMPDBSTARTUP Występuje, gdy zadanie czeka na ukończenie uruchamiania bazy danych tempdb.
SNI_CRITICAL_SECTION Występuje podczas wewnętrznej synchronizacji składników sieciowych programu SQL Server.
SNI_HTTP_WAITFOR_0_DISCON Występuje podczas zamykania programu SQL Server podczas oczekiwania na zakończenie zaległych połączeń HTTP.
SNI_LISTENER_ACCESS Występuje podczas oczekiwania na nieujednolity dostęp do pamięci (NUMA) węzłów w celu zaktualizowania zmiany stanu. Dostęp do zmiany stanu jest serializowany.
SNI_TASK_COMPLETION Występuje, gdy występuje oczekiwanie na zakończenie wszystkich zadań podczas zmiany stanu węzła NUMA.
SOAP_READ Występuje podczas oczekiwania na ukończenie odczytu sieci HTTP.
SOAP_WRITE Występuje podczas oczekiwania na ukończenie zapisu sieciowego HTTP.
SOS_CALLBACK_REMOVAL Występuje podczas synchronizacji na liście wywołań zwrotnych w celu usunięcia wywołania zwrotnego. Nie oczekuje się, że ten licznik zmieni się po zakończeniu inicjowania serwera.
SOS_DISPATCHER_MUTEX Występuje podczas wewnętrznej synchronizacji puli dyspozytora. Obejmuje to dostosowanie puli.
SOS_LOCALALLOCATORLIST Występuje podczas synchronizacji wewnętrznej w Menedżerze pamięci programu SQL Server.
SOS_MEMORY_USAGE_ADJUSTMENT Występuje, gdy użycie pamięci jest dostosowywane między pulami.
SOS_OBJECT_STORE_DESTROY_MUTEX Występuje podczas wewnętrznej synchronizacji w pulach pamięci podczas niszczenia obiektów z puli.
SOS_PROCESS_AFFINITY_MUTEX Występuje podczas synchronizowania dostępu do ustawień koligacji procesu.
SOS_RESERVEDMEMBLOCKLIST Występuje podczas synchronizacji wewnętrznej w Menedżerze pamięci programu SQL Server.
SOS_SCHEDULER_YIELD Występuje, gdy zadanie dobrowolnie zwraca harmonogram dla innych zadań do wykonania. Podczas tego oczekiwania zadanie czeka na odnowienie kwantu.
SOS_SMALL_PAGE_ALLOC Występuje podczas przydzielania i zwalniania pamięci zarządzanej przez niektóre obiekty pamięci.
SOS_STACKSTORE_INIT_MUTEX Występuje podczas synchronizacji inicjowania magazynu wewnętrznego.
SOS_SYNC_TASK_ENQUEUE_EVENT Występuje, gdy zadanie jest uruchamiane w sposób synchroniczny. Większość zadań w programie SQL Server jest uruchamiana w sposób asynchroniczny, w którym kontrolka powraca do początkowego natychmiast po umieszczeniu żądania zadania w kolejce roboczej.
SOS_VIRTUALMEMORY_LOW Występuje, gdy alokacja pamięci czeka, aż menedżer zasobów zwolni pamięć wirtualną.
SOSHOST_EVENT Występuje, gdy hostowany składnik, taki jak CLR, czeka na obiekt synchronizacji zdarzeń programu SQL Server.
SOSHOST_INTERNAL Występuje podczas synchronizacji wywołań zwrotnych menedżera pamięci używanych przez hostowane składniki, takie jak CLR.
SOSHOST_MUTEX Występuje, gdy hostowany składnik, taki jak CLR, czeka na obiekt synchronizacji mutex programu SQL Server.
SOSHOST_RWLOCK Występuje, gdy hostowany składnik, taki jak CLR, czeka na obiekt synchronizacji modułu zapisywania czytnika programu SQL Server.
SOSHOST_SEMAPHORE Występuje, gdy hostowany składnik, taki jak CLR, czeka na obiekt synchronizacji semafora programu SQL Server.
SOSHOST_SLEEP Występuje, gdy hostowane zadanie jest w stanie uśpienia podczas oczekiwania na wystąpienie zdarzenia ogólnego. Hostowane zadania są używane przez hostowane składniki, takie jak CLR.
SOSHOST_TRACELOCK Występuje podczas synchronizacji dostępu do strumieni śledzenia.
SOSHOST_WAITFORDONE Występuje, gdy hostowany składnik, taki jak CLR, czeka na ukończenie zadania.
SQLCLR_APPDOMAIN Występuje, gdy clR czeka na ukończenie uruchamiania domeny aplikacji.
SQLCLR_ASSEMBLY Występuje podczas oczekiwania na dostęp do załadowanych list zestawów w domenie aplikacji.
SQLCLR_DEADLOCK_DETECTION Występuje, gdy clR czeka na zakończenie wykrywania zakleszczenia.
SQLCLR_QUANTUM_PUNISHMENT Występuje, gdy zadanie CLR jest ograniczane, ponieważ przekroczyło kwant wykonywania. To ograniczenie jest wykonywane w celu zmniejszenia wpływu tego zadania intensywnie korzystającego z zasobów na inne zadania.
SQLSORT_NORMMUTEX Występuje podczas synchronizacji wewnętrznej podczas inicjowania wewnętrznych struktur sortowania.
SQLSORT_SORTMUTEX Występuje podczas synchronizacji wewnętrznej podczas inicjowania wewnętrznych struktur sortowania.
SQLTRACE_BUFFER_FLUSH Występuje, gdy zadanie czeka na zadanie w tle, aby opróżnić śledzenia na dysk co cztery sekundy.
SQLTRACE_LOCK Występuje podczas synchronizacji w śledzenia podczas śledzenia pliku.
SQLTRACE_SHUTDOWN Występuje, gdy zamknięcie śledzenia czeka na ukończenie zaległych zdarzeń śledzenia.
SQLTRACE_WAIT_ENTRIES Występuje, gdy kolejka zdarzeń śledzenia SQL czeka na pakiety docierające do kolejki.
SRVPROC_SHUTDOWN Występuje, gdy proces zamykania czeka na zwolnienie zasobów wewnętrznych w celu czystego zamknięcia.
TEMPOBJ Występuje, gdy tymczasowe porzucenie obiektu jest synchronizowane. To oczekiwanie jest rzadkie i występuje tylko wtedy, gdy zadanie zażądało wyłącznego dostępu do tabeli tymczasowej.
PULA WĄTKÓW Występuje, gdy zadanie oczekuje na uruchomienie procesu roboczego. Może to oznaczać, że maksymalne ustawienie procesu roboczego jest zbyt niskie lub wykonywanie partii trwa niezwykle długo, co zmniejsza liczbę dostępnych procesów roboczych w celu spełnienia innych partii.
TIMEPRIV_TIMEPERIOD Występuje podczas wewnętrznej synchronizacji czasomierza zdarzeń rozszerzonych.
TRACEWRITE Występuje, gdy dostawca śledzenia zestawów wierszy SQL czeka na wolny bufor lub bufor z zdarzeniami do przetworzenia.
TRAN_MARKLATCH_DT Występuje podczas oczekiwania na zatrzasku trybu zniszczenia na zatrzasku znacznika transakcji. Zatrzaski znacznika transakcji są używane do synchronizacji zatwierdzeń z oznaczonymi transakcjami.
TRAN_MARKLATCH_EX Występuje podczas oczekiwania na zatrzasku trybu wyłącznego na oznaczonej transakcji. Zatrzaski znacznika transakcji są używane do synchronizacji zatwierdzeń z oznaczonymi transakcjami.
TRAN_MARKLATCH_KP Występuje podczas oczekiwania na zatrzasku trybu utrzymania na oznaczonej transakcji. Zatrzaski znacznika transakcji są używane do synchronizacji zatwierdzeń z oznaczonymi transakcjami.
TRAN_MARKLATCH_NL Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
TRAN_MARKLATCH_SH Występuje podczas oczekiwania na zatrzasku trybu udostępnionego na oznaczonej transakcji. Zatrzaski znacznika transakcji są używane do synchronizacji zatwierdzeń z oznaczonymi transakcjami.
TRAN_MARKLATCH_UP Występuje podczas oczekiwania na zatrzasku trybu aktualizacji na oznaczonej transakcji. Zatrzaski znacznika transakcji są używane do synchronizacji zatwierdzeń z oznaczonymi transakcjami.
TRANSACTION_MUTEX Występuje podczas synchronizacji dostępu do transakcji przez wiele partii.
THROTTLE_LOG_RATE_LOG_STORAGE Występuje podczas zapisywania w dzienniku bazy danych jest ograniczany z powodu możliwości wydajności bazowego magazynu.
UTIL_PAGE_ALLOC Występuje, gdy skanowanie dziennika transakcji czeka na dostępność pamięci podczas nacisku pamięci.
VIA_ACCEPT Występuje po zakończeniu połączenia dostawcy karty interfejsu wirtualnego (VIA) podczas uruchamiania.
VIEW_DEFINITION_MUTEX Występuje podczas synchronizacji dostępu do buforowanych definicji widoku.
WAIT_FOR_RESULTS Występuje podczas oczekiwania na wyzwolenie powiadomienia zapytania.
WAITFOR Występuje w wyniku instrukcji WAITFOR Transact-SQL. Czas trwania oczekiwania jest określany przez parametry instrukcji . Jest to oczekiwanie zainicjowane przez użytkownika.
WAITFOR_TASKSHUTDOWN Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
WAITSTAT_MUTEX Występuje podczas synchronizacji dostępu do kolekcji statystyk używanych do wypełniania sys.dm_os_wait_stats.
WCC Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
WORKTBL_DROP Występuje podczas wstrzymania przed ponowną próbą, po upuszczonej tabeli roboczej, która zakończyła się niepowodzeniem.
WRITE_COMPLETION Występuje, gdy operacja zapisu jest w toku.
WRITELOG Występuje podczas oczekiwania na zakończenie opróżnienia dziennika. Typowe operacje, które powodują opróżnienia dzienników, to punkty kontrolne i zatwierdzenia transakcji.
XACT_OWN_TRANSACTION Występuje podczas oczekiwania na przejęcie własności transakcji.
XACT_RECLAIM_SESSION Występuje podczas oczekiwania na bieżącego właściciela sesji, aby zwolnić własność sesji.
XACTLOCKINFO Występuje podczas synchronizacji dostępu do listy blokad dla transakcji. Oprócz samej transakcji lista blokad jest uzyskiwana przez operacje, takie jak wykrywanie zakleszczenia i migracja blokady podczas podziałów stron.
XACTWORKSPACE_MUTEX Występuje podczas synchronizacji wad z transakcji, a także liczby blokad bazy danych między elementami członkowskimi transakcji.
XE_BUFFERMGR_ALLPROCESSED_EVENT Występuje, gdy sesji zdarzeń rozszerzonych są opróżniane do obiektów docelowych. To oczekiwanie występuje w wątku w tle.
XE_BUFFERMGR_FREEBUF_EVENT Występuje, gdy spełniony jest jeden z następujących warunków:

Sesja zdarzeń rozszerzonych jest skonfigurowana pod kątem braku utraty zdarzeń, a wszystkie w sesji są obecnie pełne. Może to oznaczać, że sesji zdarzeń rozszerzonych są zbyt małe lub powinny być partycjonowane.

Inspekcje doświadczają opóźnienia. Może to wskazywać wąskie gardło dysku na dysku, na którym są zapisywane inspekcje.
XE_DISPATCHER_CONFIG_SESSION_LIST Występuje, gdy sesja zdarzeń rozszerzonych używająca obiektów docelowych asynchronicznych jest uruchamiana lub zatrzymywana. To oczekiwanie wskazuje jeden z następujących elementów:

Sesja zdarzeń rozszerzonych rejestruje się w puli wątków w tle.

Pula wątków w tle oblicza wymaganą liczbę wątków na podstawie bieżącego obciążenia.
XE_DISPATCHER_JOIN Występuje, gdy wątek w tle używany na potrzeby sesji zdarzeń rozszerzonych kończy się.
XE_DISPATCHER_WAIT Występuje, gdy wątek w tle używany na potrzeby sesji zdarzeń rozszerzonych oczekuje na przetworzenie zdarzeń.
XE_MODULEMGR_SYNC Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
XE_OLS_LOCK Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
XE_PACKAGE_LOCK_BACKOFF Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
FT_COMPROWSET_RWLOCK Cały tekst oczekuje na operację metadanych fragmentu. Udokumentowane tylko w celach informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
FT_IFTS_RWLOCK Cały tekst oczekuje na synchronizację wewnętrzną. Udokumentowane tylko w celach informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
FT_IFTS_SCHEDULER_IDLE_WAIT Typ oczekiwania uśpienia harmonogramu pełnotekstowego. Harmonogram jest bezczynny.
FT_IFTSHC_MUTEX Cały tekst czeka na operację kontrolki fdhost. Udokumentowane tylko w celach informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
FT_IFTSISM_MUTEX Cały tekst oczekuje na operację komunikacji. Udokumentowane tylko w celach informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
FT_MASTER_MERGE Pełny tekst oczekuje na operację scalania głównego. Udokumentowane tylko w celach informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.