Sign in

GSM

@turnstep.bsky.social
423 followers 230 following 176 posts

Postgres. Lots of Postgres.

PostsRepliesMedia
GSM @turnstep.bsky.social · 52m
Fascinating article about database hints by @vik.thegresqlpost.org thegresqlpost.org/articles/a-h... #postgres
thegresqlpost.org
A Hint of Dependence
Why execution instructions do not belong in SQL, and what the planner needs instead.
000
GSM @turnstep.bsky.social · 13/09/2026
Interesting discussions about increasing the frequency of Postgres releases. Looks like we will end up somewhere more frequently than quarterly and less often than monthly. #postgres
101
GSM @turnstep.bsky.social · 13/09/2026
This was so much fun to read: www.snowflake.com/en/blog/engi... #postgres #postgresql
snowflake.com
30 Years of Postgres Architecture: Tom Lane Interview
Explore 30 years of Postgres architecture with core committer Tom Lane. Learn about process isolation, MVCC, write-ahead logging, and threads.
020
GSM @turnstep.bsky.social · 06/07/2026
I wanted to read this: pduzc.com/blog/postgre... but it's a blank page with javascript disabled (a good idea on unknown sites) and with enabled, the color and text contrast makes it near impossible to read. Maybe dark mode interactions?
pduzc.com
PDU - PostgreSQL Data Unloader
Professional PostgreSQL data recovery tool for corrupted databases
200
GSM @turnstep.bsky.social · 06/07/2026
Cool article about Postgres checksums: www.pgedge.com/blog/looking... #postgres Two issues: no mention of pg_backrest, which leverages checksums. Interrupted checksum enablings do NOT have to start from the beginning.
pgedge.com
Looking Forward to Postgres 19: Checksums For All
Data checksums protect against silent hardware corruption... but enabling them always required taking Postgres offline. Postgres 19 fixes that once and for all. Shaun Thomas discusses it in the latest...
130
GSM @turnstep.bsky.social · 28/06/2026
Nice to see some pushback about Postgres checkpoint_timeout. The default is way too low! mydbanotebook.org/posts/stop-p... #postgres
mydbanotebook.org
Stop Punishing Your Postgres for a Crash That Won't Happen | My DBA Notebook
There is a misconception I keep running into, and it causes real harm in production. People are afraid to increase checkpoint_timeout. They think a longer timeout means a longer recovery after a crash...
100
GSM @turnstep.bsky.social · 26/02/2026
Updated bucardo.org/postgres_all... - the all-in-one-page release notes. We just hit 555 versions of Postgres tracked! #postgres #postgresql
bucardo.org
Postgres Release Notes - All Versions
010
GSM @turnstep.bsky.social · 10/12/2025
Heh, almost every first attempt at solving Advent of Code puzzles with Postgres leads to "ERROR: integer out of range". Poor little int4, just not up to the job! #postgres #postgresql #adventofcode
010
GSM @turnstep.bsky.social · 15/11/2025
It's not just Postgres. Nulls are weird and full of edge cases no matter what RDBMS you use. #postgres #postgresql
040
GSM @turnstep.bsky.social · 23/10/2025
Nice post about AI suggesting "improvements" for a Postgrs table schema. But the part that made me LOL was the human comment starting with "Hopefully" :) stokerpostgresql.blogspot.com/2025/10/load... #postgres #postgresql
stokerpostgresql.blogspot.com
Loading The Titanic Passenger Data Into PostgreSQL With DBeaver Part 2
000
GSM @turnstep.bsky.social · 07/10/2025
Oh for Pete's sake, now there are some on the Postgres lists advocating *raising* random_page_cost default - by a lot! Crazy times. #postgres #postgresql
000
GSM @turnstep.bsky.social · 05/10/2025
Working on some v19 features and managed to break my test Postgres instance worst than I ever have before. Every single SQL command causes the backend to crash. To be fair, I'm messing with the parser, but it's still a little jarring. :) #postgres #postgresql
120
GSM @turnstep.bsky.social · 08/09/2025
Been working with a database that defaults to UPPERCASE for unquoted things, and wow, is that annoying after all these decades of calm, non-yelling lowercase Postgres code. :) #postgres #postgresql
020
GSM @turnstep.bsky.social · 03/09/2025
Wondering if I should bother trying to raise the default track_activity_query_size in Postgres. It's been 1kb for a long time, and that seems too small for today's verbose apps, complex queries, and ORMs. #postgres
000
GSM @turnstep.bsky.social · 01/09/2025
Inspired by a Slack discussion, here's how to tell how many of today's 86,400 seconds have been used up already: select round(extract(epoch from now() - 'today'::date)); #postgres
020
GSM @turnstep.bsky.social · 22/08/2025
Awesome blog post on Postgres logging from my colleague @sqlliz.bsky.social www.crunchydata.com/blog/postgre... #postgres #postgresql
crunchydata.com
Postgres Logging for Performance Optimization | Crunchy Data Blog
Review key logging configurations in Postgres plus how to log key performance metrics.
120
GSM @turnstep.bsky.social · 20/08/2025
Use of domains came up on Postgres lists recently. I very seldom use them, always seems better to just use check constraints on a base type. Still more useful than enum however! #postgres #postgresql
010
GSM @turnstep.bsky.social · 14/08/2025
Yikes. Another crappy blog written by LLM spotted and slammed: thebuild.com/blog/2025/08... I'm not convinced the comment replies are not LLM as well. #postgres #postgresql
thebuild.com
Lies, Damn Lies, and LLM Output.
010
GSM @turnstep.bsky.social · 01/08/2025
Getting down to the finish line - hope my "initdb checkpoints on by default" patch and its cousin "don't dump stats to pg_dump by default" both survive as is! #postgres #postgresql
000
GSM @turnstep.bsky.social · 30/07/2025
Postgres tip of the day: you can chain psql -c calls: psql -c 'alter system set random_page_cost = 1.5' -c 'select pg_reload_conf()' Bonus: they run in the same session, so you can even use vars. #postgres #postgresql
172
GSM @turnstep.bsky.social · 30/07/2025
Not happy with all the ads and pseudo-ads popping up on Planet Postgres... #postgres #postgresql
010
GSM @turnstep.bsky.social · 28/07/2025
Amazing post on making Postgres slower (yes, slower!) on purpose. byteofdev.com/posts/making... #postgres #postgresql Favorite bit: "random_page_cost = 1e300" LOL! Well done
byteofdev.com
Making Postgres 42,000x slower because I am unemployed
As an respectable unemployed person must do, I tried to make Postgres as slow as possible
021
GSM @turnstep.bsky.social · 24/07/2025
Great article at www.rudderstack.com/blog/scaling... about getting Postgres to scale. My only objection would be the lowering of checkpoint_timeout; better to rely on a failover replica than worry about WAL replay. #postgres #postgresql
rudderstack.com
Lessons from scaling PostgreSQL queues to 100K events
This post is a chronicle of the critical, hard-won lessons learned while maturing PostgreSQL into a highly performant and resilient queuing system.
010
GSM @turnstep.bsky.social · 22/07/2025
Nice article about what exactly is the PGDG (Postgres Global Development Group). My sv is "anyone who directly (and knowingly) helps the project in any form". www.cybertec-postgresql.com/en/who-are-t... #postgres #postgresql #planetpg
cybertec-postgresql.com
Who are the PGDG?
This article describes what the PGDG (PostgreSQL Global Development Group) is and how you can become a part of it.
041
GSM @turnstep.bsky.social · 19/07/2025
Postgres making some more progress towards not supporting 32-bit stuff. Or at least making our code less painful to work with it. Even Raspberry Pi can do 64-bit these days! #postgres
160
GSM @turnstep.bsky.social · 15/07/2025
Pro tip: use long args when sending example commands to someone; less likely they will get it wrong. psql -X vs. psql --no-psqlrc As a bonus, it's usually a lot more self-documenting as well. #postgres
130
GSM @turnstep.bsky.social · 13/07/2025
Interesting thread on -hackers about Postgres resizing shared_buffers on the fly (smaller to larger only!). Looks quite feasible, I think it will make it into v19 #postgres
010
GSM @turnstep.bsky.social · 10/07/2025
"While the Postgres community has an older and sometimes daunting contribution process of submitting patches to a mailing list..." (from clickhouse.com/blog/sigterm...). Okay, guilty as charged. :) #postgres
010
GSM @turnstep.bsky.social · 10/07/2025
Love this post about active-active Postgres replication and reasons not to do it: percona.community/blog/2025/07... The best one is #4 (because other systems did it). If I had a nickle for every time I heard "but Oracle...." #postgres #postgresql
020
GSM @turnstep.bsky.social · 05/07/2025
Fascinating discussion about Postgres and the use custom/generic plans (if you have been to my training, you know about this and the magic number 5). danolivo.substack.com/p/on-postgre... #postgres #postgresql #planetpg
021
GSM @turnstep.bsky.social · 02/07/2025
This is a good post about UUIDs in Postgres at andyatkinson.com/constraint-d... but the name is too long - "Avoid UUID Version 4 Primary Keys" can really be shortened to "Avoid UUID" :) #postgres #postgresql
110
GSM @turnstep.bsky.social · 30/06/2025
Good Postgres post on how often the optimizer is "correct": vondra.me/posts/how-of... #postgres #postgresql #planetpg Key qyote: "There’s also the question of the cost model itself, which is a very rough approximation of the hardware behavior" - I'm looking at you again, random_page_cost!!!
vondra.me
010
GSM @turnstep.bsky.social · 25/06/2025
Woah - did not expect to see vectors in the (still future) SQL standard, but there it is: peter.eisentraut.org/blog/2025/06... #postgres #planetpg #postgresql
000
GSM @turnstep.bsky.social · 24/06/2025
Cannot resist reposting this: devclass.com/2025/06/24/s... #postgres #postgresql
000
GSM @turnstep.bsky.social · 22/06/2025
Nice article on SELECT FOR UPDATE in Postgres at www.cybertec-postgresql.com/en/select-fo.... I take issue that plain FOR UPDATE is "harmful" or "wrong", but I get the point about only taking the locks you actually need. Would be nice if NO KEY UPDATE was default. #postgres #planetpg #postgresql
130
GSM @turnstep.bsky.social · 21/06/2025
I know pg_hba.conf is ugly, but compared to mysql's auth system, it works very well indeed. #postgres
020
GSM @turnstep.bsky.social · 20/06/2025
As the author of one of the earlier multi-master systems, posts like percona.community/blog/2025/06... are always interesting to me. #postgres #postgresql My take: it is not needed 99.99% of the time, despite what people insist.
040
GSM @turnstep.bsky.social · 18/06/2025
Ugh, that -hackers thread in which RHEL8 keeps getting labelled as an "old OS". It ain't dead yet! #postgres #rhel
000
GSM @turnstep.bsky.social · 17/06/2025
Nice article about pg_upgrade finally preserving statistics in Postgres: www.cybertec-postgresql.com/en/preserve-... Parts of this were quite contentious. Hopefully, v18 lands with sensible defaults. #postgres #postgresql
cybertec-postgresql.com
Preserve optimizer statistics during major upgrades with PostgreSQL v18
This article highlights the new PostgreSQL v18 feature for keeping the optimizer statistics during a major upgrade.
020
GSM @turnstep.bsky.social · 17/06/2025
www.caktusgroup.com/blog/2025/06... tl;dr don't use Django. j/k just be careful with it. #postgres #postgresql
caktusgroup.com
Avoiding Timezone Traps: Correctly Extracting Date/Time Subfields in Django with PostgreSQL | Caktus Group
Learn to avoid a common timezone pitfall in Django and PostgreSQL. See why using EXTRACT with AT TIME ZONE on a date type can lead to incorrect results and how session timezones can unexpectedly shift...
020
GSM @turnstep.bsky.social · 14/06/2025
Random idea: make psql smart enough to give feedback for long-running queries like CREATE INDEX as we have pg_stat_progress* #postgres #postgresql
020
GSM @turnstep.bsky.social · 13/06/2025
postgres-contrib.org/post/44/ #postgres #postgresql
postgres-contrib.org
Contributions for the week of 2025-06-02 (Week 23)
Contributions for the week of 2025-06-02 (Week 23) | PG Day France 2025 took place on June 3 and 4 in Mons, Belgium, organized by Leila Bakkali, Matt Cornillon, S…
010
GSM @turnstep.bsky.social · 10/06/2025
Nice little post about arrays (which I love and hate in Postgres): www.cybertec-postgresql.com/en/using-reg... #postgres #postgresql
cybertec-postgresql.com
Using regular expressions and arrays in PostgreSQL
Learn how to combine the usage of regular expressions and arrays in PostgreSQL into a more powerful technology through this blog post.
000
GSM @turnstep.bsky.social · 08/06/2025
Well, it was certainly an interesting week for me in Postgres land! #postgres
120
GSM @turnstep.bsky.social · 30/05/2025
tgl quote of the day "RLS is a performance killer" So true. Fast, secure, pick one. #postgres #postgresql
120
GSM @turnstep.bsky.social · 29/05/2025
Made my craziest patch idea yet to -hackers today. #postgres #postgresql
200
GSM @turnstep.bsky.social · 28/05/2025
Hilarious that sometimes Postgres has things like a "xact_start" column to save space rather than writing out "transaction_start" but then also has a column named "result_cast_numeric_precision_radix" and a function called "binary_upgrade_set_next_multirange_array_pg_type_oid" #postgres
110
GSM @turnstep.bsky.social · 28/05/2025
Reminder: pg_last_xact_replay_timestamp() and similar are at the mercy of your primary actually making changes that generate WAL. Cron up something lightweight for low-activity times! #postgres #postgresql
000
GSM @turnstep.bsky.social · 27/05/2025
Nice to see local Postgres meetups happening like this: hdombrovskaya.wordpress.com/2025/05/26/p... #postgres #postgresql #planetpg
hdombrovskaya.wordpress.com
Prairie Postgres Developers Summit
Even before the Community Summit in Montreal, I wanted to organize a Developers Summit at one of our meetups. My inspiration came from the Open spaces at DevOps Day Chicago. I saw how productive th…
020
GSM @turnstep.bsky.social · 23/05/2025
Happy to report that statistics will NOT be dumped by default in Postgres 18. It will be the default for pg_upgrade, of course. #postgres #postgresql #battlewon
000