Wiele baz danych realizuje izolację różnych transakcji użytkownika za pomocą blokad uniemożliwiających innym użytkownikom dostęp do danych. Istnieją dwa rodzaje blokad:
♦ Blokada współdzielona (ang. shared lock), pozwalająca innym użytkownikom odczytywać dane, ale nie na ich aktualizację
♦ Blokada wyłączna (ang. exclusive lock), nie zezwalająca innym transakcjom nawet na odczyt
Przykładem zastosowania blokad przez serwer jest blokada aktualizowanych przez transakcję wierszy. Wiersze są zablokowane do końca transakcji. Blokada taka zwykle zakładana jest automatycznie.
Mechanizmy blokad stosowane przez PostgreSOL są dosyć skomplikowane (patrz dokumentacja). Na szczęście użytkownicy bazy muszą przejmować się blokadami tylko w dwóch przypadkach: unikając zakleszczeń oraz jawnie stosując blokady w aplikacjach.
kwiecień 16, 2003 19