Thread: pgsql: Allow IF NOT EXISTS when add a new enum label.
Allow IF NOT EXISTS when add a new enum label. If the label is already in the enum the statement becomes a no-op. This will reduce the pain that comes from our not allowing this operation inside a transaction block. Andrew Dunstan, reviewed by Tom Lane and Magnus Hagander. Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/6d12b68cd7a93e279c8c690749b334c9f59ac7fa Modified Files -------------- doc/src/sgml/ref/alter_type.sgml | 9 +++++++-- src/backend/catalog/pg_enum.c | 18 +++++++++++++++++- src/backend/commands/typecmds.c | 3 ++- src/backend/nodes/copyfuncs.c | 1 + src/backend/nodes/equalfuncs.c | 1 + src/backend/parser/gram.y | 25 ++++++++++++++++--------- src/include/catalog/pg_enum.h | 3 ++- src/include/nodes/parsenodes.h | 1 + src/test/regress/expected/enum.out | 22 ++++++++++++++++++++++ src/test/regress/sql/enum.sql | 20 ++++++++++++++++++++ 10 files changed, 89 insertions(+), 14 deletions(-)