Re: existing row not found by SELECT ... WHERE CTID = ?

Поиск
Список
Период
Сортировка
От Christoph Moench-Tegeder
Тема Re: existing row not found by SELECT ... WHERE CTID = ?
Дата
Msg-id Yo4gxgkAIdqVkMS6@elch.exwg.net
обсуждение исходный текст
Ответ на Re: existing row not found by SELECT ... WHERE CTID = ?  (Matthias Apitz <guru@unixarea.de>)
Список pgsql-general
## Matthias Apitz (guru@unixarea.de):

> We will solve the problem now with setting the session after connect to
> 
>    SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL REPEATABLE READ;
> 
> (with an appropriate ESQL/C call). Any comments?

Maybe the real question is whether it is wise to use an implementation
artifact (ctid) to identify rows?
The textbook approach could be row locks (SELECT ... FOR SHARE/UPDATE and
variants) to prevent concurrent changes or optimistic locking  (and a
primary key in any case) - but maybe you already investigated those options?

Regards,
Christoph

-- 
Spare Space



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

Предыдущее
От: Matthias Apitz
Дата:
Сообщение: Re: existing row not found by SELECT ... WHERE CTID = ?
Следующее
От: Färber, Franz-Josef (StMUK)
Дата:
Сообщение: Extension pg_trgm, permissions and pg_dump order