summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2011-08-25 12:37:32 -0400
committerRobert Haas <rhaas@postgresql.org>2011-08-25 12:38:06 -0400
commitb7cd5c836ae952b5911eac9ec5f888779a2d0b81 (patch)
treeb53831c9420a8905adeeeffdf8a3c3c3d70051dd
parent8a32c946586c8be422ff1ea18f6a6ea5c3141ebb (diff)
Properly quote SQL/MED generic options in pg_dump output.
Shigeru Hanada
-rw-r--r--src/bin/pg_dump/pg_dump.c8
1 files 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);