Bazy danych · Senior · Pytanie 12 z 75
Czym są blokady doradcze (advisory locks) w PostgreSQL?
- 1Blokadami zakładanymi automatycznie przy każdym SELECT
- 2Blokadami, które planer zaleca, ale nie wymusza
- ✓Poprawna odpowiedź: Blokadami na dowolnych liczbach definiowanymi przez aplikację, przydatnymi np. do „tylko jedna instancja uruchamia ten cron”
Wyjaśnienie
pg_try_advisory_lock(key) zwraca false, jeśli ktoś inny ją trzyma. Blokady na poziomie sesji trzeba zwalniać jawnie; przy poolerach w trybie transakcji lepsze są blokady na poziomie transakcji.