choosing the right locking mode
| От | rihad |
|---|---|
| Тема | choosing the right locking mode |
| Дата | |
| Msg-id | 47F50987.1010603@mail.ru обсуждение исходный текст |
| Ответы |
Re: choosing the right locking mode
Re: choosing the right locking mode Re: choosing the right locking mode |
| Список | pgsql-general |
Given this type query:
UPDATE bw_pool
SET user_id=?
WHERE bw_id=
(SELECT MIN(bw_id) FROM bw_pool WHERE user_id IS NULL)
RETURNING bw_id
The idea is to "single-threadedly" get at the next available empty slot,
no matter how many such queries run in parallel. So far I've been
semi-successfully using LOCK TABLE bw_pool before the UPDATE, but it
deadlocks sometimes. Maybe I could use some less restrictive locking
mode and prevent possible collisions at the same time?
Thanks.
В списке pgsql-general по дате отправления: