Re: BUG #13524: Not Getting expected Serialization error
От | Bobby Rullo |
---|---|
Тема | Re: BUG #13524: Not Getting expected Serialization error |
Дата | |
Msg-id | CANFpDAD5Bgr9=MYqdrHnMnp9s5DFPPKO4kdMAwxZqOqQRTEe4A@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: BUG #13524: Not Getting expected Serialization error (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-bugs |
That took me a while to wrap my head around but it makes sense now. Thanks for the succinct explanation! Bobby On Wed, Jul 29, 2015 at 8:40 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: > bobby.rullo@coreos.com writes: > > To reproduce: > > 1) execute statements in sequence 1 on a connection, stopping at the > > "--EXECUTE" statement. > > 2) In another connection, execute all the statements in Sequence 2. > > 3) Back in the first connection execute the remaining statement (the > > "commit;") > > > Expected: > > error when trying to commit, eg. "ERROR: could not serialize" > > > Actual: > > Both commits succeed. > > > Interesting tidbit: > > If you do the exact steps as above but uncomment the "select count(*)" in > > sequence 2, you get the expected error. > > This seems perfectly fine to me. Without the "select count(*)" in > transaction 2, there is a valid serialization of the transactions, > ie t1 before t2. Serializability is *not* defined as "the transactions > appear to have executed in the order they were started (or committed)". > It is defined as "there is some consistent order in which they appear > to have executed". > > regards, tom lane >
В списке pgsql-bugs по дате отправления: