Re: how to serialize insert followed by read(select) by different clients

Поиск
Список
Период
Сортировка
От Sandeep Gupta
Тема Re: how to serialize insert followed by read(select) by different clients
Дата
Msg-id CAAywg7uiZtWNtz9h7R52jaFsjy+oJA2AZwmhe--ATMMBDhBhjQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: how to serialize insert followed by read(select) by different clients  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
Hi Tom,

 Appreciate so much for looking into this. This is a single database instance.
I debugged a bit more
 after I posted the problem and realized that writer was actually working in
 asynchronous mode. Once I fixed that the program is working as expected.

Thanks.
sandeep




On Sun, Aug 7, 2016 at 11:43 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Sandeep Gupta <gupta.sandeep@gmail.com> writes:
>>  First program, lets say the writer, (using psql) appends to a table
>> in the  database.
>>  Second program, the reader, (python using alchemy) reads the data.
>>  This happens in loop, one for each day.The programs are fired in that order
>>  and the first program always commits after it inserts new rows.
>
>>  The problem is that the second program does not see the updates of the first
>> program consistently.
>
> There are only two possible explanations for that:
>
> 1. The writer isn't actually issuing a COMMIT when you think it is.
>
> 2. The reader is using a stale snapshot, ie it's using SERIALIZABLE
> or REPEATABLE READ transaction mode and its transaction started before
> the writer committed.
>
> If you're having trouble identifying the cause of the problem you
> might try setting "log_statement = all" and looking at where BEGINs
> and COMMITs get issued.
>
> (Well, I guess that only exhausts the possibilities as long as this is
> happening on a single database server.  If the reader is reading from
> a hot-standby slave then replication delays might explain your problem.
> But that would be a rather material omission of facts.)
>
>                         regards, tom lane


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

Предыдущее
От: Michael Paquier
Дата:
Сообщение: Re: fixing failed master after standby promotion
Следующее
От: Alex Magnum
Дата:
Сообщение: Extract data from JSONB