PostgreSQL
Commitment Issues
One of the essentials of any database system is that a transaction is either in progress, committed, or rolled back. But consider what happens if…
1 BEGIN;
2 UPDATE table SET money=money+100000;
3 COMMIT;
4 -- And you get an error that the server has disconnected
Streaming replication stopped? One more thing to check.
We recently were asked by a client to look at a strange replication situation. Replication had simply stopped from a primary to a streaming replication secondary. Everything looked fine:
“Humans do not have a primary key” at PGConf.EU
The slides for “Humans do not have a primary key” as presented at PGConf EU are available here. Three links from the presentation are:
“Humans do not have a primary key” at PGOpen SV
I’ll be presenting “Humans do not have a primary key” at PGOpen SV today. Two links from the presentation are:
A brief reminder about casting TIMESTAMPTZ
I spent a few minutes worrying I had lost my mind: Results coming back to my application were different from those obtained by running psql directly on the database server, for identical queries.
As is often the case, the problem was time zones.
In particular, when casting a TIMESTAMPTZ to a DATE, the current client time zone
shared_buffers is not a sensitive setting
There’s a lot of mystery-cult information floating around out there about what to set shared_buffers to in PostgreSQL. Most of it is, at best, overthinking a fairly simple setting.
You can get 90% of the way there, on 95%+ of PostgreSQL systems, just by setting it to 25% of total system memory, to a maximum of 32GB. (It used
Resetting the postgres user’s password
For some reason, this is something that even experienced PostgreSQL people don’t know about, which is: What do you do if you’ve forgotten the postgres user’s password, and you have no other superuser available?
The answer is: Bring up PostgreSQL in single-user mode, reset the password, bring it back up in standard mode.
A PostgreSQL Response to Uber
The slides from my talk at Percona Live 2017, A PostgreSQL Response to Uber, which I also gave as “Why Uber Was (Mostly) Wrong” at PGDay Nordic 2017, are now available.
“Corruption War Stories” from PGConf US 2017
The slides from my presentation, Corruption War Stories, are now available.