#​495 — March 1, 2023

Web Version

Together with  Cockroach Labs

Postgres Weekly

European Route Planning with Postgres — We love Mark because when he discovers a dataset of bus routes across Europe, he fires up Postgres and builds visualizations and a route planner using pgRouting. There’s nothing particularly novel about this aprooach, but it’s the sort of post you’ll turn to when you need to solve related problems.

Mark Litwintschik

Amazon RDS Now Supports Postgres 15Postgres 15, which landed last October, is now fully supported in RDS complete with over 80 extensions.

Amazon Web Services

The History of Databases at Netflix — What does it take, at the infrastructure level, to deliver pixel-perfect and buffer-free streams to millions of concurrent users worldwide? Take a deep dive into the resilient, binge-ready architecture behind the streaming giant’s success.

CockroachDB sponsor

152 psql Tips — This was originally 100 tips when we first included it, but this list of bite-sized tips for the tried and tested psql client continues to grow. If you have a psql session coming up any time soon, this is worth a browse. It’s also possible to load a single tip and hop through randomly if you prefer your tips snack-sized.

Lætitia Avrot


Getting Started with Stored Procedures — Stored procedures are the bread and butter of certain types of database work, but if you haven’t touched them at all, this intro is for you.

Hans-Jürgen Schönig

Can We Make Permissions Management More User-Friendly? — Grants and permissions have continued to evolve with new versions of Postgres but there are still some sharp edges and inconsistencies.

Henrietta Dombrovskaya

Storing Trees as Materialized Paths — Storing trees in a database is complicated, but storing them in the form of materialized paths (think of how domains and subdomains essentially represent tree structures – e.g. mail.example․com) can simplify being able to query them, at least.

Tobias Petry

ALTER TABLE … SET WITHOUT OIDS: A Big Gotcha — When you drop a column, it gets marked as inactive and that’s that. Unless you use SET WITHOUT OIDS which ends up rewriting the whole table and can result in a long running lock.

Christophe Pettus

Postgres Raster Query Basics — Paul takes us through how rasters (think pixels/cells, as opposed to vectors) are stored and queried with PostGIS and how to think about the challenges they raise.

Paul Ramsey

How to Migrate from Django’s Postgres CI Fields to Using a Case‑Insensitive Collation
Adam Johnson

🛠 Code and Tools

pgtt 2.10: Manage and Use Oracle-Style Global Temporary Tables — For those situations where you want to reproduce Oracle’s behavior rather than rewrite your code to use standard Postgres temporary tables.

Gilles Darold

Tuple, a Lightning-Fast Pairing Tool Built for Remote Developers

Tuple sponsor