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