Re: [GENERAL] How to make a read-write atomic?

Поиск
Список
Период
Сортировка
От Vadim Mikheev
Тема Re: [GENERAL] How to make a read-write atomic?
Дата
Msg-id 37CDD54A.59CAA28A@krs.ru
обсуждение исходный текст
Ответ на How to make a read-write atomic?  (Daniel Stolk <stolkd@email.com>)
Список pgsql-general
Daniel Stolk wrote:
>
> Hi,
>
> I used to use the BEGIN-COMMIT pair in order to ensure that two
> processes didn't read the same data and write at the same time, so
> messing things up.  But I've recently upgraded to the latest version of
> postgresql and now it doesn't work anymore.  Does anybody know what's
> going on?
>
> To explain my situation in more detail:
> I want a process to read the database for the entry that has the highest
> customerid number.  I then want the process to write the next entry into
> the database with a customerid that is one larger.  But if two processes
> read at the same time, then they will both write an entry that has the
> same customerid number.  How do I keep this from occurring since the
> BEGIN command doesn't seem to work for me anymore?

Use LOCK TABLE IN SHARE ROW EXCLUSIVE MODE before reading max
customerid. Please read doc and "Migration to v6.5" in HISTORY.

Vadim

В списке pgsql-general по дате отправления:

Предыдущее
От: "Robert Wagner"
Дата:
Сообщение: Re: [GENERAL] How to make a read-write atomic?
Следующее
От: "omid omoomi"
Дата:
Сообщение: Re: [GENERAL] How to make a read-write atomic?