pgsql: Fix dumping of a materialized view that depends on a table's pri
От | Tom Lane |
---|---|
Тема | pgsql: Fix dumping of a materialized view that depends on a table's pri |
Дата | |
Msg-id | E1WU0tK-0000J4-A4@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Fix dumping of a materialized view that depends on a table's primary key. It is possible for a view or materialized view to depend on a table's primary key, if the view query relies on functional dependency to abbreviate a GROUP BY list. This is problematic for pg_dump since we ordinarily want to dump view definitions in the pre-data section but indexes in post-data. pg_dump knows how to deal with this situation for regular views, by breaking the view's ON SELECT rule apart from the view proper. But it had not been taught what to do about materialized views, and in fact mistakenly dumped them as regular views in such cases, as seen in bug #9616 from Jesse Denardo. If we had CREATE OR REPLACE MATERIALIZED VIEW, we could fix this in a manner analogous to what's done for regular views; but we don't yet, and we'd not back-patch such a thing into 9.3 anyway. As a hopefully- temporary workaround, break the circularity by postponing the matview into post-data altogether when this case occurs. Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/62215de2925705bc607635e45ff800364456b1a1 Modified Files -------------- src/bin/pg_dump/pg_dump.c | 5 +++- src/bin/pg_dump/pg_dump.h | 5 ++-- src/bin/pg_dump/pg_dump_sort.c | 64 +++++++++++++++++++++++++++++++++++++--- 3 files changed, 67 insertions(+), 7 deletions(-)
В списке pgsql-committers по дате отправления: