This is super cool, I love how it suggests safer ways to achieve the same goal for many common risky migrations. Definitely going to sit down and study these.
It doesn't make the article less interesting but this statement is wrong most of the time
> This scenario is essentially identical to one in which there's a single migration statement that requires an `AccessExclusiveLock` and performs a table rewrite, such as adding a NOT NULL column with a DEFAULT value.
Unless the `DEFAULT` value is `VOLATILE` (this is rarely the case as usually default values are at least `STABLE`) no table rewrite is necessary since Postgres 11.
> Many other useful performance improvements, including the ability to avoid a table rewrite for ALTER TABLE ... ADD COLUMN with a non-null column default
Thanks, I will fix this part. As far as I can tell, it is only the example of what can cause the table rewrite that's wrong, so it would be correct if the example was to make a varchar shorter? Although I guess that's not a table rewrite, only a long validation...
A really interesting idea. Checking what locks a database migrations holds in CI so you can automatically add warnings to pull requests that are likely to cause downtime.
Another appear of an ax in a Pink Floyd song is the “ Run to the bedroom, in the suitcase on the left, you'll find my favorite axe,” from “One Of My Turns”
Or a Manic Miner fan - it's the name of one of the levels. Presumably influenced by Pink Floyd, although the person that wrote Manic Miner was only about eleven IIRC :-)
Made your page much more readable on large screens https://imgur.com/a/KJbsCOr
Remove the aside bar, remove the 25vw padding on the left, increase font size to 2em and remove the margin 0 8% 2%. Increase your line-height to 2.0 which I havent done in my image
The docs include a handy articulation of fixes.