"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 […]
"Exclusive backup" method is deprecated - what now?
by
Laurenz Albe |
02.2019 UPDATE 12.07.2022: The “exclusive backup” method of calling pg_start_backup('label') before backup and pg_stop_backup() afterwards has been removed in PostgreSQL […]
UPDATED August 2024 pgbouncer is the most widely used connection pooler for PostgreSQL. This blog will provide a simple cookbook […]
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 […]
Since I only recently learned about the concept of “killed index tuples”, I thought there might be some others […]
Foreign Key Indexing and Performance in PostgreSQL
by
Laurenz Albe |
10.2018Foreign key constraints are an important tool to keep your database consistent while also documenting relationships between tables. A fact […]
Correlation of PostgreSQL columns explained
by
Laurenz Albe |
09.2018After you ANALYZE a PostgreSQL table to collect value distribution statistics, you will find the gathered statistics for each column […]
Rules or triggers to log bulk updates?
by
Laurenz Albe |
07.2018 Inspired by my co-worker's recent blog post, I decided to revisit the old question of rules vs. triggers and […]
Adding an index can decrease SELECT performance
by
Laurenz Albe |
06.2018 We all know that you have to pay a price for a new index you create — data modifying […]
In a recent wrestling match with the Linux “out-of-memory killer” for a CYBERTEC customer I got acquainted with Linux […]