3 ms·
It is in the Wiki: https://wiki.postgresql.org/wiki/Serializable https://wiki.postgresql.org/wiki/Serializable Any transaction which is run at a transaction iso
by franckpachot 3y ago
It is in the Wiki:
https://wiki.postgresql.org/wiki/Serializable https://wiki.postgresql.org/wiki/Serializable
Any transaction which is run at a transaction isolation level other than SERIALIZABLE will not be affected by SSI. If you want to enforce business rules through SSI, all transactions should be run at the SERIALIZABLE transaction isolation level, and that should probably be set as the default.
I guess it is the same for all MVCC databases. They don't want to acquire a read lock just in case another transaction is in Serializable
- gwen-shapira 3y agoThe OP mentioned that SQLServer does lock (but then, it doesn't use SSI - just SI). The recommendation in PG docs to use a combination of SERIALIZABLE and READ ONLY transactions seems like a good one for read-heavy systems.