Re: [HACKERS] Change format of FDW options used in \d* commands

2011-08-25 Thread Robert Haas
2011/8/19 Shigeru Hanada shigeru.han...@gmail.com:
 BTW, I noticed that pg_dump has same issue since 8.4, initial release of
 SQL/MED infrastructure.  If a FDW option was defined on any FDW object
 with a name which contains one of special characters such as space and
 parentheses, pg_dump generates invalid OPTIONS clause such as OPTIONS
 (separated name 'value').
  ~~
 Perhaps this issue has been overlooked because dblink is practically the
 only use case of FDW option before 9.1.  Since 9.1, users might get
 various FDW and some of those might use special characters in option
 name.  ISTM that this fix should be back-patched, at least to 9.1.
 Please find attached patches for each STABLE branch.

Good catch, committed.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] Change format of FDW options used in \d* commands

2011-08-25 Thread Robert Haas
2011/8/19 Shigeru Hanada shigeru.han...@gmail.com:
 Oops, good catch.  I've fixed psql to use quote_ident() for option_name,
 and modified regression tests to use special characters in option names.
  Please try revised version of patch.

This part looks good to me, too.  Committed.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] Change format of FDW options used in \d* commands

2011-08-18 Thread Robert Haas
2011/8/18 Shigeru Hanada shigeru.han...@gmail.com:
 Thanks for the review.

 (2011/08/13 3:59), Robert Haas wrote:
 IMHO, the new format should put parentheses around the options list.

 Agreed.  Revised version of patch has been attached.  This version puts
 parentheses around FDW option only when it was not NULL.

ISTM you should do quote_ident() on the option names.  For example, after:

create foreign data wrapper dummy;
create server s1 foreign data wrapper dummy;
create foreign table ft1 (a int) server s1 options (( ')');

With your patch, I get:

rhaas=# \d+ ft1
 Foreign table public.ft1
 Column |  Type   | Modifiers | FDW Options | Storage | Description
+-+---+-+-+-
 a  | integer |   | | plain   |
Server: s1
FDW Options: (( ')')
Has OIDs: no

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers