Objawy
Załóżmy, że transakcje w pamięci są używane razem z procedurą składowaną systemu sp_getapplock w programie Microsoft SQL Server 2016 lub 2017. Jeśli włączysz inspekcję serwera w grupie akcji inspekcji na poziomie serwera SCHEMA_OBJECT_ACCESS_GROUP, otrzymasz komunikat o błędzie "Komunikat 41317" podobny do następującego:
Uwaga
Wiadomość 41317, Poziom 16, Stan 4, Numer wiersza
Transakcja użytkownika, która uzyskuje dostęp do tabel zoptymalizowanych pod kątem pamięci lub natywnie skompilowanych modułów, nie może uzyskać dostępu do więcej niż jednej bazy danych użytkownika lub modelu bazy danych i bazy danych MSDB i nie może zapisywać do wzorca.
Rozwiązanie
Ten problem został rozwiązany w następujących aktualizacjach zbiorczych dla programu SQL Server:
Aktualizacja zbiorcza 13 dla programu SQL Server 2017
Aktualizacja zbiorcza 3 dla programu SQL Server 2016 z dodatkiem Service Pack 2
Uwaga: Ta aktualizacja rozwiązuje również problem polegający na tym, że nierozwiązane zakleszczenie jest widoczne, gdy polecenie tworzenia schematu jest wykonywane przez użytkownika bez uprawnień do tworzenia schematu w bazie danych, a SCHEMA_OBJECT_ACCESS_GROUP i SCHEMA_OBJECT_CHANGE_GROUP są włączone w specyfikacji inspekcji bazy danych.
Informacje o kompilacjach programu SQL Server
Każda nowa kompilacja programu SQL Server 2016 zawiera wszystkie poprawki zabezpieczeń z poprzedniej kompilacji. Zalecamy zainstalowanie najnowszej aktualizacji zbiorczej programu SQL Server:
Najnowsza aktualizacja zbiorcza dla programu SQL Server 2017
najnowszej kompilacji dla programu SQL Server 2016
Stan
Firma Microsoft potwierdziła, że jest to problem dotyczący produktów firmy Microsoft wymienionych w sekcji „Dotyczy”.
Źródła informacji
Dowiedz się więcej o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.