From b7cd5c836ae952b5911eac9ec5f888779a2d0b81 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Thu, 25 Aug 2011 12:37:32 -0400 Subject: [PATCH] Properly quote SQL/MED generic options in pg_dump output. Shigeru Hanada --- src/bin/pg_dump/pg_dump.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 8721e6573db..d6a547fc475 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -5884,7 +5884,8 @@ getForeignDataWrappers(int *numForeignDataWrappers) appendPQExpBuffer(query, "SELECT tableoid, oid, fdwname, " "(%s fdwowner) AS rolname, fdwvalidator::pg_catalog.regproc, fdwacl," "array_to_string(ARRAY(" - " SELECT option_name || ' ' || quote_literal(option_value) " + " SELECT quote_ident(option_name) || ' ' || " + " quote_literal(option_value) " " FROM pg_options_to_table(fdwoptions)), ', ') AS fdwoptions " "FROM pg_foreign_data_wrapper", username_subquery); @@ -5969,7 +5970,8 @@ getForeignServers(int *numForeignServers) "(%s srvowner) AS rolname, " "srvfdw, srvtype, srvversion, srvacl," "array_to_string(ARRAY(" - " SELECT option_name || ' ' || quote_literal(option_value) " + " SELECT quote_ident(option_name) || ' ' || " + " quote_literal(option_value) " " FROM pg_options_to_table(srvoptions)), ', ') AS srvoptions " "FROM pg_foreign_server", username_subquery); @@ -10275,7 +10277,7 @@ dumpUserMappings(Archive *fout, appendPQExpBuffer(query, "SELECT usename, " - "array_to_string(ARRAY(SELECT option_name || ' ' || quote_literal(option_value) FROM pg_options_to_table(umoptions)), ', ') AS umoptions\n" + "array_to_string(ARRAY(SELECT quote_ident(option_name) || ' ' || quote_literal(option_value) FROM pg_options_to_table(umoptions)), ', ') AS umoptions\n" "FROM pg_user_mappings " "WHERE srvid = %u", catalogId.oid); -- 2.47.2