Index: doc/src/sgml/ref/psql-ref.sgml =================================================================== RCS file: /cvsroot/pgsql-server/doc/src/sgml/ref/psql-ref.sgml,v retrieving revision 1.118 diff -c -c -r1.118 psql-ref.sgml *** doc/src/sgml/ref/psql-ref.sgml 13 Jul 2004 16:48:15 -0000 1.118 --- doc/src/sgml/ref/psql-ref.sgml 15 Jul 2004 03:53:16 -0000 *************** *** 832,837 **** --- 832,839 ---- Lists all available tablespaces. If pattern is specified, only tablespaces whose names match the pattern are shown. + If + is appended to the command name, each object + is listed with its associated permissions. Index: src/bin/psql/command.c =================================================================== RCS file: /cvsroot/pgsql-server/src/bin/psql/command.c,v retrieving revision 1.121 diff -c -c -r1.121 command.c *** src/bin/psql/command.c 13 Jul 2004 16:48:16 -0000 1.121 --- src/bin/psql/command.c 15 Jul 2004 03:53:26 -0000 *************** *** 302,308 **** success = describeAggregates(pattern, show_verbose); break; case 'b': ! success = describeTablespaces(pattern); break; case 'c': success = listConversions(pattern); --- 302,308 ---- success = describeAggregates(pattern, show_verbose); break; case 'b': ! success = describeTablespaces(pattern, show_verbose); break; case 'c': success = listConversions(pattern); Index: src/bin/psql/describe.c =================================================================== RCS file: /cvsroot/pgsql-server/src/bin/psql/describe.c,v retrieving revision 1.102 diff -c -c -r1.102 describe.c *** src/bin/psql/describe.c 13 Jul 2004 16:48:16 -0000 1.102 --- src/bin/psql/describe.c 15 Jul 2004 03:53:26 -0000 *************** *** 106,112 **** * Takes an optional regexp to select particular tablespaces */ bool ! describeTablespaces(const char *pattern) { PQExpBufferData buf; PGresult *res; --- 106,112 ---- * Takes an optional regexp to select particular tablespaces */ bool ! describeTablespaces(const char *pattern, bool verbose) { PQExpBufferData buf; PGresult *res; *************** *** 117,126 **** printfPQExpBuffer(&buf, "SELECT spcname AS \"%s\",\n" " pg_catalog.pg_get_userbyid(spcowner) AS \"%s\",\n" ! " spclocation AS \"%s\"\n" ! "FROM pg_catalog.pg_tablespace\n", _("Name"), _("Owner"), _("Location")); processNamePattern(&buf, pattern, false, false, NULL, "spcname", NULL, NULL); --- 117,133 ---- printfPQExpBuffer(&buf, "SELECT spcname AS \"%s\",\n" " pg_catalog.pg_get_userbyid(spcowner) AS \"%s\",\n" ! " spclocation AS \"%s\"", _("Name"), _("Owner"), _("Location")); + if (verbose) + appendPQExpBuffer(&buf, + ",\n spcacl as \"%s\"", + _("Access privileges")); + + appendPQExpBuffer(&buf, + "\nFROM pg_catalog.pg_tablespace\n"); + processNamePattern(&buf, pattern, false, false, NULL, "spcname", NULL, NULL); Index: src/bin/psql/describe.h =================================================================== RCS file: /cvsroot/pgsql-server/src/bin/psql/describe.h,v retrieving revision 1.25 diff -c -c -r1.25 describe.h *** src/bin/psql/describe.h 13 Jul 2004 16:48:16 -0000 1.25 --- src/bin/psql/describe.h 15 Jul 2004 03:53:26 -0000 *************** *** 14,20 **** bool describeAggregates(const char *pattern, bool verbose); /* \db */ ! bool describeTablespaces(const char *pattern); /* \df */ bool describeFunctions(const char *pattern, bool verbose); --- 14,20 ---- bool describeAggregates(const char *pattern, bool verbose); /* \db */ ! bool describeTablespaces(const char *pattern, bool verbose); /* \df */ bool describeFunctions(const char *pattern, bool verbose); Index: src/bin/psql/help.c =================================================================== RCS file: /cvsroot/pgsql-server/src/bin/psql/help.c,v retrieving revision 1.89 diff -c -c -r1.89 help.c *** src/bin/psql/help.c 13 Jul 2004 16:48:16 -0000 1.89 --- src/bin/psql/help.c 15 Jul 2004 03:53:26 -0000 *************** *** 211,217 **** fprintf(output, _(" \\d{t|i|s|v|S} [PATTERN] (add \"+\" for more detail)\n" " list tables/indexes/sequences/views/system tables\n")); fprintf(output, _(" \\da [PATTERN] list aggregate functions\n")); ! fprintf(output, _(" \\db [PATTERN] list tablespaces\n")); fprintf(output, _(" \\dc [PATTERN] list conversions\n")); fprintf(output, _(" \\dC list casts\n")); fprintf(output, _(" \\dd [PATTERN] show comment for object\n")); --- 211,217 ---- fprintf(output, _(" \\d{t|i|s|v|S} [PATTERN] (add \"+\" for more detail)\n" " list tables/indexes/sequences/views/system tables\n")); fprintf(output, _(" \\da [PATTERN] list aggregate functions\n")); ! fprintf(output, _(" \\db [PATTERN] list tablespaces (add \"+\" for more detail)\n")); fprintf(output, _(" \\dc [PATTERN] list conversions\n")); fprintf(output, _(" \\dC list casts\n")); fprintf(output, _(" \\dd [PATTERN] show comment for object\n"));