Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitbd2cd13

Browse files
committed
Teach pg_dump to dump comments on RLS policy objects.
This was unaccountably omitted in the original RLS patch.The SQL syntax is basically the same as for comments on triggers,so crib code from dumpTrigger().Per report from Marc Munro. Back-patch to all supported branches.Discussion:https://postgr.es/m/1581889298.18009.15.camel@bloodnok.com
1 parent12bea22 commitbd2cd13

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

‎src/bin/pg_dump/pg_dump.c

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3618,6 +3618,8 @@ dumpPolicy(Archive *fout, PolicyInfo *polinfo)
36183618
TableInfo *tbinfo = polinfo->poltable;
36193619
PQExpBuffer query;
36203620
PQExpBuffer delqry;
3621+
PQExpBuffer polprefix;
3622+
char *qtabname;
36213623
const char *cmd;
36223624
char *tag;
36233625

@@ -3675,6 +3677,9 @@ dumpPolicy(Archive *fout, PolicyInfo *polinfo)
36753677

36763678
query = createPQExpBuffer();
36773679
delqry = createPQExpBuffer();
3680+
polprefix = createPQExpBuffer();
3681+
3682+
qtabname = pg_strdup(fmtId(tbinfo->dobj.name));
36783683

36793684
appendPQExpBuffer(query, "CREATE POLICY %s", fmtId(polinfo->polname));
36803685

@@ -3695,6 +3700,9 @@ dumpPolicy(Archive *fout, PolicyInfo *polinfo)
36953700
appendPQExpBuffer(delqry, "DROP POLICY %s", fmtId(polinfo->polname));
36963701
appendPQExpBuffer(delqry, " ON %s;\n", fmtQualifiedDumpable(tbinfo));
36973702

3703+
appendPQExpBuffer(polprefix, "POLICY %s ON",
3704+
fmtId(polinfo->polname));
3705+
36983706
tag = psprintf("%s %s", tbinfo->dobj.name, polinfo->dobj.name);
36993707

37003708
if (polinfo->dobj.dump & DUMP_COMPONENT_POLICY)
@@ -3708,9 +3716,16 @@ dumpPolicy(Archive *fout, PolicyInfo *polinfo)
37083716
NULL, 0,
37093717
NULL, NULL);
37103718

3719+
if (polinfo->dobj.dump & DUMP_COMPONENT_COMMENT)
3720+
dumpComment(fout, polprefix->data, qtabname,
3721+
tbinfo->dobj.namespace->dobj.name, tbinfo->rolname,
3722+
polinfo->dobj.catId, 0, polinfo->dobj.dumpId);
3723+
37113724
free(tag);
37123725
destroyPQExpBuffer(query);
37133726
destroyPQExpBuffer(delqry);
3727+
destroyPQExpBuffer(polprefix);
3728+
free(qtabname);
37143729
}
37153730

37163731
/*

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp