Search Postgresql Archives

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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxx> wrote:
> Sandeep Gupta <gupta.sandeep@xxxxxxxxx> 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


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux