The PostgreSQL documentation has some information about row locks. But typically, you cannot see them in pg_locks, and not […]
(Updated 2023-04-07) Even if you understand what a deadlock is, debugging deadlocks can be tricky. This article shows some […]
Disabling autocommit in PostgreSQL can damage your health
by
Laurenz Albe |
06.2021 When analyzing customer's problems, I have seen the mess you can get into if you disable autocommit in your […]
PostgreSQL: Understanding deadlocks
"ERROR: deadlock detected" - message - what should I do? This article explains what this really means and how deadlocks can be prevented.
"LOCK TABLE" can harm your database's health
by
Laurenz Albe |
03.2019 Many people know that explicit table locks with LOCK TABLE are bad style and usually a consequence of bad […]
Be prepared for prepared transactions
by
Laurenz Albe |
12.2018Prepared transactions are disabled in PostgreSQL by default, since the parameter max_prepared_transactions has the default value 0. You don't need […]
xmax is a PostgreSQL system column that is used to implement Multiversion Concurrency Control (MVCC). The documentation is somewhat terse: […]
SKIP LOCKED: Locking for maximum concurrency
Many cool new features have been added to the wonderful PostgreSQL 9.5 release. One of the most exciting ones is definitely SKIP LOCKED.