Use HOT, so CLUSTER won't rot in PostgreSQL
by
Laurenz Albe |
06.2023CLUSTER is sometimes the last resort to squeeze performance out of an index scan. Normally, you have to repeat CLUSTER […]
ERROR: invalid byte sequence - Fix bad encoding in PostgreSQL
by
Laurenz Albe |
05.2023(Inscription seen on a T-shirt) It's annoying to get error messages caused by encoding problems. But it is more annoying […]
When talking to customers, sometimes I get the question: How should PostgreSQL installations deal with huge pages and large memory […]
PostgreSQL ALTER DEFAULT PRIVILEGES - permissions explained
by
Laurenz Albe |
05.2023 Many people have heard that ALTER DEFAULT PRIVILEGES makes it easy to allow other users access to tables. But […]
Different from many other database systems, PostgreSQL does not support query hints. That makes it difficult to force the […]
Docker and sudden death for PostgreSQL
by
Laurenz Albe |
05.2023 This is a short war story from a customer problem. It serves as a warning that there are special […]
Parallel aggregate - PostgreSQL 16 - better performance
What is a parallel aggregate? In PostgreSQL, a parallel aggregate refers to a way of processing aggregate functions (such as […]
New old "debug_parallel_query" setting in PostgreSQL 16
Naming variables Why will force_parallel_mode - the runtime option be renamed to debug_parallel_query in PostgreSQL 16? Proper variable and function […]
PostgreSQL: DELETE vs. TRUNCATE
Archiving and database cleanup in PostgreSQL: Find out how DELETE and TRUNCATE compare in terms of performance and how the magic works
Transaction ID wraparound: a walk on the wild side
by
Laurenz Albe |
01.2023 Most people are aware of transaction ID wraparound. The concept has been well explained in Hans' article, so I […]