mainameiz
@mainameiz
Full-stack web-developer

Как уже сейчас можно реализовать skip locked в Postgres?

В новом postgres'е будет фича - skip locked, которая пропускает залоченные строки в таблице. Очень полезная фича для реализации очередей (queue). Интересно как уже сейчас можно получить похожий функционал. Я сам сейчас реализую это на уровне языка. Храню колонку state и вытаскиваю по одной записи и пытаюсь их залочить (изменением state) через select for update. Но у этого решения есть минусы.

UPD: Мне нужно сделать персистентную очередь для выполнения отложенных задач.
  • Вопрос задан
  • 955 просмотров
Решения вопроса 1
@mtyurin
avito
www.postgresql.org/docs/9.4/static/explicit-lockin...
www.postgresql.org/docs/9.4/static/functions-admin...
pg_try_advisory_xact_lock

индекскан (по order by ) и фильтр после where pg_try_advisory_xact_lock(myID)

dklab.ru/chicken/nablas/53.html вот надо посмотреть
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы