On 3 November 2012 23:10, Thalis Kalfigkopoulos <tkalfigo@xxxxxxxxx> wrote: > How is that three levels and not two? Read Uncommitted and Read Commited are > the same. And Repeatable Reads don't allow phantom reads thus making them > effectively the same as Serializable. No? They're only equivalent to the extent that the SQL standard describes the isolation levels (in terms of various anomalies that can or cannot occur, including phantom reads). However, the SQL standard has nothing to say about write-skew anomalies, which can introduce errors that are not possible with actually serially executing transactions. The SQL standard and every implementation other than Postgres don't completely "plug the leaks" in the illusion of serial behaviour with snapshot isolation/Postgres repeatable reads. The Wikipedia article on Snapshot Isolation [1] may be informative here. [1] http://en.wikipedia.org/wiki/Snapshot_isolation -- Peter Geoghegan http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training and Services -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general