mirror of
https://github.com/postgres/postgres.git
synced 2025-06-01 00:01:20 -04:00
Include publication owner's name in the output of \dRp+.
Without this, \dRp prints information that \dRp+ does not, which seems pretty odd. Daniel Gustafsson Discussion: https://postgr.es/m/3641F19B-336A-431A-86CE-A80562505C5E@yesql.se
This commit is contained in:
parent
3c163a7fc7
commit
9dea962b3e
@ -5162,8 +5162,9 @@ describePublications(const char *pattern)
|
||||
initPQExpBuffer(&buf);
|
||||
|
||||
printfPQExpBuffer(&buf,
|
||||
"SELECT oid, pubname, puballtables, pubinsert,\n"
|
||||
" pubupdate, pubdelete\n"
|
||||
"SELECT oid, pubname,\n"
|
||||
" pg_catalog.pg_get_userbyid(pubowner) AS owner,\n"
|
||||
" puballtables, pubinsert, pubupdate, pubdelete\n"
|
||||
"FROM pg_catalog.pg_publication\n");
|
||||
|
||||
processSQLNamePattern(pset.db, &buf, pattern, false, false,
|
||||
@ -5198,13 +5199,13 @@ describePublications(const char *pattern)
|
||||
for (i = 0; i < PQntuples(res); i++)
|
||||
{
|
||||
const char align = 'l';
|
||||
int ncols = 4;
|
||||
int ncols = 5;
|
||||
int nrows = 1;
|
||||
int tables = 0;
|
||||
PGresult *tabres;
|
||||
char *pubid = PQgetvalue(res, i, 0);
|
||||
char *pubname = PQgetvalue(res, i, 1);
|
||||
bool puballtables = strcmp(PQgetvalue(res, i, 2), "t") == 0;
|
||||
bool puballtables = strcmp(PQgetvalue(res, i, 3), "t") == 0;
|
||||
int j;
|
||||
PQExpBufferData title;
|
||||
printTableOpt myopt = pset.popt.topt;
|
||||
@ -5214,6 +5215,7 @@ describePublications(const char *pattern)
|
||||
printfPQExpBuffer(&title, _("Publication %s"), pubname);
|
||||
printTableInit(&cont, &myopt, title.data, ncols, nrows);
|
||||
|
||||
printTableAddHeader(&cont, gettext_noop("Owner"), true, align);
|
||||
printTableAddHeader(&cont, gettext_noop("All tables"), true, align);
|
||||
printTableAddHeader(&cont, gettext_noop("Inserts"), true, align);
|
||||
printTableAddHeader(&cont, gettext_noop("Updates"), true, align);
|
||||
@ -5223,6 +5225,7 @@ describePublications(const char *pattern)
|
||||
printTableAddCell(&cont, PQgetvalue(res, i, 3), false, false);
|
||||
printTableAddCell(&cont, PQgetvalue(res, i, 4), false, false);
|
||||
printTableAddCell(&cont, PQgetvalue(res, i, 5), false, false);
|
||||
printTableAddCell(&cont, PQgetvalue(res, i, 6), false, false);
|
||||
|
||||
if (!puballtables)
|
||||
{
|
||||
|
@ -77,9 +77,9 @@ Publications:
|
||||
|
||||
\dRp+ testpub_foralltables
|
||||
Publication testpub_foralltables
|
||||
All tables | Inserts | Updates | Deletes
|
||||
------------+---------+---------+---------
|
||||
t | t | t | f
|
||||
Owner | All tables | Inserts | Updates | Deletes
|
||||
--------------------------+------------+---------+---------+---------
|
||||
regress_publication_user | t | t | t | f
|
||||
(1 row)
|
||||
|
||||
DROP TABLE testpub_tbl2;
|
||||
@ -90,18 +90,18 @@ CREATE PUBLICATION testpub3 FOR TABLE testpub_tbl3;
|
||||
CREATE PUBLICATION testpub4 FOR TABLE ONLY testpub_tbl3;
|
||||
\dRp+ testpub3
|
||||
Publication testpub3
|
||||
All tables | Inserts | Updates | Deletes
|
||||
------------+---------+---------+---------
|
||||
f | t | t | t
|
||||
Owner | All tables | Inserts | Updates | Deletes
|
||||
--------------------------+------------+---------+---------+---------
|
||||
regress_publication_user | f | t | t | t
|
||||
Tables:
|
||||
"public.testpub_tbl3"
|
||||
"public.testpub_tbl3a"
|
||||
|
||||
\dRp+ testpub4
|
||||
Publication testpub4
|
||||
All tables | Inserts | Updates | Deletes
|
||||
------------+---------+---------+---------
|
||||
f | t | t | t
|
||||
Owner | All tables | Inserts | Updates | Deletes
|
||||
--------------------------+------------+---------+---------+---------
|
||||
regress_publication_user | f | t | t | t
|
||||
Tables:
|
||||
"public.testpub_tbl3"
|
||||
|
||||
@ -120,9 +120,9 @@ CREATE PUBLICATION testpub_fortbl FOR TABLE testpub_tbl1;
|
||||
ERROR: publication "testpub_fortbl" already exists
|
||||
\dRp+ testpub_fortbl
|
||||
Publication testpub_fortbl
|
||||
All tables | Inserts | Updates | Deletes
|
||||
------------+---------+---------+---------
|
||||
f | t | t | t
|
||||
Owner | All tables | Inserts | Updates | Deletes
|
||||
--------------------------+------------+---------+---------+---------
|
||||
regress_publication_user | f | t | t | t
|
||||
Tables:
|
||||
"pub_test.testpub_nopk"
|
||||
"public.testpub_tbl1"
|
||||
@ -166,9 +166,9 @@ Publications:
|
||||
|
||||
\dRp+ testpub_default
|
||||
Publication testpub_default
|
||||
All tables | Inserts | Updates | Deletes
|
||||
------------+---------+---------+---------
|
||||
f | t | t | t
|
||||
Owner | All tables | Inserts | Updates | Deletes
|
||||
--------------------------+------------+---------+---------+---------
|
||||
regress_publication_user | f | t | t | t
|
||||
Tables:
|
||||
"pub_test.testpub_nopk"
|
||||
"public.testpub_tbl1"
|
||||
@ -211,9 +211,9 @@ DROP VIEW testpub_view;
|
||||
DROP TABLE testpub_tbl1;
|
||||
\dRp+ testpub_default
|
||||
Publication testpub_default
|
||||
All tables | Inserts | Updates | Deletes
|
||||
------------+---------+---------+---------
|
||||
f | t | t | t
|
||||
Owner | All tables | Inserts | Updates | Deletes
|
||||
--------------------------+------------+---------+---------+---------
|
||||
regress_publication_user | f | t | t | t
|
||||
(1 row)
|
||||
|
||||
-- fail - must be owner of publication
|
||||
|
Loading…
x
Reference in New Issue
Block a user