Hotfix and Security Content Publishing: 113140
Symptomy
Załóżmy, że należy włączyć oledzenie zmian dla jednej lub większej liczby tabel w programie SQL Server 2017 i ustawić AUTO_CLEANUP = on. Użytkownik zauważy, że żadne wiersze nie są usuwane lub czyszczone z tabel bocznych lub tabeli systemowej sys. syscommittab nawet po okres przechowywania. Ponadto zauważysz następujące symptomy:
-
Jeśli łączysz się przy użyciu wydzielonych połączeń administratora i przeprowadzisz kwerendę do nieprawidłowej wersji oczyszczania i oczyszczania w zaostrzonym stanie, okaże się, że ich wyniki są następujące:
Wybierz pozycję * z tabeli sys. sysobjvalues, gdzie valclass = 7 i objidd = 1003--nieprawidłowa
SELECT * FROM sys. sysobjvalues, gdzie valclass = 7 i objidd = 1004--zaostrzone
-
W przypadku uruchomienia poniższego dodatku SP w celu oczyszczenia narzędzia sys. syscommittab ręcznienie spowoduje to oczyszczenia i zwróci niezmienioną wersję Oczyść oczyszczania:
exec sp_flush_commit_table_on_demand
Prowadzone
Wartość zwracana przez change_tracking_hardened_cleanup_version () to-nnnnnn.
-
Jeśli podczas automatycznego oczyszczania śledzenia zmian wystąpił sesja zdarzeń rozszerzonych z zdarzeniem change_tracking_cleanup, należy zauważyć, że CleanupStatusChange jest ustawiona na 32 (błąd) i istnieje praca w trybie oczyszczania:
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".
Rozwiązanie
Ten problem został rozwiązany w następującej zbiorczej aktualizacji dla programu SQL Server:
Informacje dotyczące aktualizacji zbiorczych dla programu SQL Server:
Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:
Uwaga Aby rozwiązać ten problem, należy włączyć flagę śledzenia 8290 i pozwolić na uruchomienie procesu automatycznego oczyszczania. Po włączeniu tej flagi śledzenia Zmień proces automatycznego oczyszczania śledzenia spowoduje zresetowanie nieprawidłowej wersji oczyszczania w celu oczyszczenia na podstawie okresu przechowywania. Tę flagę śledzenia można włączyć na poziomie sesji lub na poziomie uruchamiania. W celu Opis głównej przyczyny, dlaczego wersja oczyszczania jest ujemna, zaleca się rozmowę z pomocą techniczną i dostarczenie dodatkowych informacji.
Informacje
Informacje o terminologii używanej przez firmę Microsoft do opisywania aktualizacji oprogramowania.
Bug Information:
-
Bug #: 13312017 (sqlbuvsts01)
-
Bug #: 113039 (Content Idea)
KE: v-sidong
Author:
Writer: v-sidong
Tech reviewer: tzakir; akbarf; lzhang
Editor: v-jizho