We were just busy shooting down a different suggestion of
behavior-changing GUCs. A GUC that turns all ALTERs into no-ops
sure seems like a foot-gun to me.
Yeah, I like EXPLAIN better.
+1 for EXPLAIN
IMVHO, and for "symmetry" with existing mechanisms:
* EXPLAIN ALTER TABLE ==> "DDL dry run", but tell me what would be
done (similar to what EXPLAIN SELECT does)
* EXPLAIN PERFORM ALTER TABLE (EXPLAIN EXEC?) would explain + do
...and bonus points for explaining each step just before it is
performed. This way, It'd be easy for users to verify that a particular
step (i.e. table rewrite) is the one taking æons to run or hammering the
storage.
Of course, regular "ALTER TABLE" stays as it is.
Just my .02€ :)
I'm not familiar with this part of the code and clearly can't devote
enough time to do it in the near future, but count on me to test it if
accepted.
Thanks,
Jose