What is the purpose of a transaction?
Transactions are at the core of any modern relational database. The idea is to be able to make operations atomic. In other words, you want "everything or nothing". If you want to delete 1 million rows, for example, you want none or all of them to be gone – you don't want to be stuck with a couple of remaining rows.
How long can a transaction in PostgreSQL be?
The most important thing is that the configuration of PostgreSQL doesn't really affect the maximum length of a transaction. Therefore, you can run basically (almost) infinitely long transactions changing billions of lines with hundreds of millions of statements.
What is transaction isolation?
Not all transactions are created equally. Therefore, in many cases, you have to control the visibility of data inside your transactions. This is exactly when transaction...