Objawy
Załóżmy, że używasz programu Microsoft SQL Server 2014 lub 2016. Podczas sprawdzania użycia dostępnej pamięci w węzłach NUMA można zauważyć, że pamięć węzła bazy danych (KB) jest mniejsza niż 2 procent rozmiaru docelowego. W takiej sytuacji może zostać wyświetlony następujący komunikat o błędzie "Brak pamięci":
Data/godzina spid36s Nie udało się przydzielić BUF:FAIL_BUFFER_ALLOCATION 1
Ten problem występuje nawet wtedy, gdy w programie SQL Server jest dostępna duża ilość pamięci.
Przyczyna
Błąd "Brak pamięci" może wystąpić, gdy pamięć węzła bazy danych (KB) staje się mniejsza niż 2% rozmiaru docelowego i nie może już odrzucać stron bazy danych w węźle, aby uzyskać wolne strony.
Stan
Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.
Rozwiązanie
Ten problem został rozwiązany w następujących aktualizacjach zbiorczych programu SQL Server:
Aktualizacja zbiorcza 5 dla programu SQL Server 2016 z dodatkiem Service Pack 2
Aktualizacja skumulowana 15 dla programu SQL Server 2014 z dodatkiem SP2
Informacje o aktualizacjach zbiorczych programu SQL Server:
Każda nowa aktualizacja zbiorcza programu SQL Server zawiera wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji skumulowanej. Sprawdź najnowsze aktualizacje zbiorcze dla programu SQL Server:
Najnowsza aktualizacja zbiorcza dla programu SQL Server 2016
Najnowsza aktualizacja zbiorcza dla programu SQL Server 2014
Wskazówka Po zastosowaniu tej poprawki SQL Server będzie można odzyskiwać strony ze zdalnych węzłów buforu, jeśli liczba stron bazy danych w węźle lokalnym spadnie poniżej 2% stron docelowych.
Źródła informacji
Dowiedz się więcej o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.