Cała dokumentacja dotycząca zakleszczeń SQL Server mówi o scenariuszu, w którym operacja 1 blokuje zasób A, a następnie próbuje uzyskać dostęp do zasobu B, a operacja 2 blokuje zasób B i próbuje uzyskać dostęp do zasobu AZakleszczenia SQL Server między wybieraniem/aktualizacją lub wieloma wyborami
Jednak często widzę zakleszczenia między wyborem i aktualizacją, a nawet między wieloma wyborami w niektórych z naszych zajętych aplikacji. Uważam, że niektóre z lepszych wyników śledzenia impasu są całkiem nieprzeniknione, ale chciałbym po prostu zrozumieć, co może spowodować impas między dwiema pojedynczymi operacjami. Na pewno, jeśli opcja select ma blokadę odczytu, aktualizacja powinna po prostu poczekać przed uzyskaniem wyłącznej blokady i na odwrót?
To dzieje się na SQL Server 2005, nie sądzę, że to robi różnicę.
Rozumiem o poziomach izolacji, powyższe zakleszczenia można rozwiązać, powodując, że wybrana opcja read uncommitted BUT, ale dlaczego odczyt, który rozpoczyna się ZANIM aktualizacja kończy się impasem z tą aktualizacją przy użyciu read? –