#392 — February 10, 2021

Web Version

Postgres Weekly

Deep Postgres Thoughts: The Linux Assassin — A rather evocative title to describe Linux’s OOM (out of memory) manager that will terminate processes to free up memory. What approaches can you take to protect Postgres from this ‘assassin’ and what special things can you do when Kubernetes is in the mix?

Joe Conway

Cleaning Up Your Postgres Database — As we learn in last week’s feature item, there are numerous wins to be had by cleaning up unused indexes. Here’s a quicker article with tips on keeping a database clean and finding potential targets.

Craig Kerstiens

📈 Timescale Analytics Project: Time-series Analytics for PostgreSQLTimescale Analytics aims to combine all the capabilities SQL needs to perform time-series analytics into a single PG extension – and we want (and need) your help. See current proposals, ways to contribute, plus how to join us & shape the project 💪

Timescale sponsor

What is a 'Checkpoint'? — A quick tutorial about how Postgres tries to prevent database corruption or data loss by the use of the write ahead log (WAL) and what a checkpoint is in relation to these. Worth a quick read to keep up to date with your terminology.

Hans-Jürgen Schönig

TOAST Data Corruption or 'ERROR: unexpected chunk number' — TOAST is a mechanism for storing ‘oversized’ data separately alongside tables rather than directly within the row. But if the connection between the table and the external data gets broken, corruption can occur.

Luca Ferrari

Why Is There a Database Named “postgres”? — This isn’t an existential question about Postgres’ existence, but about the database named postgres that comes with many fresh installs.

Hubert depesz Lubaczewski

How to Undistribute a Distributed Postgres Table — If you’re using the Citus extension to distribute your Postgres database, what happens if you need to go back to an undistributed system for some reason? Citus 9.5 makes it possible.

Halil Ozan Akgül

Troubleshooting Performance Issues Due to Disk and RAM — A quick look at ways to evaluate the use of both disk space and memory, two areas in which mismanagement can quickly lead to performance problems.

Hamid Akhtar

Use CYPEX to Build Internal PostgreSQL Applications in No Time — Little coding is needed to achieve big results: CYPEX enables you to easily turn PostgreSQL tables into fully fledged apps.

CYBERTEC sponsor

What Does 'Pool' Mean in Pgpool-II?PgPool-II is a popular Postgres connection pooler and load balancer although it’s certainly far more than just a pooler now and Tatsuo wants you to think of it in a broader way now.

Tatsuo Ishii

Talking to Postgres Through Java 16 Unix-Domain Socket Channels

Gunnar Morling

How to Setup Postgres 13 WAL Streaming Replication on Ubuntu 18.04

David Zhang

🔧 Tools and Code

TimescaleDB 2.0 Now Generally Available — The Timescale folks revealed TimescaleDB 2.0 late last year but now it’s GA. If you want an open source, highly scalable, time series database sat atop Postgres, it's worth a look.

Erik Nordström (Timescale)

lib_mustache: A Basic Mustache Template Engine in PL/pgSQLMustache is a popular templating system and this will let you lean on Postgres to do the rendering, if you wish.

Netwo

pg-boss 5.1.0: A Postgres Powered Job Queueing System for Node.js — A job queue for background processing and reliable asynchronous execution. It uses Postgres specific features to guarantee safety.

Tim Jones