"UPDATE table_name SET w = $1, x = $2, z = $4 WHERE y = $3 RETURNING *",
does not do the same as
"UPDATE table_name SET w = $1, x = $2, y = $3, z = $4 RETURNING *",
It's 2 am and my mind blanked out the WHERE, and just wanted the numbers neatly in order of 1234.
idiot.
FML.
Periodic, versioned backups are the ultimate defense against bugs.
Periodic, versioned and tested backups.
It absolutely, totally, never ever happened to me that I had a bunch of backups available that turned out to be effectively unrestorable the moment I needed them. 😭
The worse feeling than realizing you don't have backup is realizing your backup archives are useless.
Or like that time gitlab found out that none of its 5 backup/replications worked and lost 6 hours of data.