PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Kolejka w php i postgres

Jak napisano, inny pracownik próbujący odebrać zadanie zablokowałby się w zapytaniu 1. Może zobaczyć starą wersję wiersza, ale nie może go zaktualizować — zablokuje się.

Więc nie rób tego w jednej transakcji. Zażądaj i zobowiąż się; wykonać pracę; następnie postanów i zobowiąż się. Każdy, kto przyjdzie, zobaczy, że awantura jest już zajęta. Również ty może zobaczyć, że jest on objęty roszczeniem, co pomoże ci w debugowaniu i monitorowaniu.

Kiedy przejmujesz wiersz, powinieneś zaznaczyć coś charakterystycznego (pid, jeśli jest tylko jedna maszyna robocza lub nazwa hosta i pid, jeśli jest ich kilka), a nie po prostu „ongoing”. W ten sposób, jeśli pracownik umrze, możesz ręcznie posprzątać po nim.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Opóźnienie lub oczekiwanie na wyciąg

  2. Postgresql:wstawianie wartości kolumny z pliku

  3. Paginacja Django Rest Framework bardzo wolno liczy

  4. Błąd Postgresa podczas aktualizowania danych w kolumnie

  5. Pisanie funkcji w języku SQL, aby przejść przez zakres dat w UDF