Fix dropping materialized views while doing alter table

(cherry picked from commit 35043c56f1)

 Conflicts:
	src/backend/distributed/commands/alter_table.c
	src/test/regress/expected/alter_distributed_table.out
	src/test/regress/expected/alter_distributed_table_0.out
	src/test/regress/expected/alter_table_set_access_method.out
	src/test/regress/sql/alter_distributed_table.sql
	src/test/regress/sql/alter_table_set_access_method.sql
pull/5409/head
Ahmet Gedemenli 2021-01-26 21:44:22 +03:00 committed by Onur Tirtir
parent 209049006c
commit 4a2dde4612
1 changed files with 2 additions and 1 deletions

View File

@ -1172,12 +1172,13 @@ GetDependingView(Form_pg_depend pg_depend)
Form_pg_rewrite pg_rewrite = (Form_pg_rewrite) GETSTRUCT(rewriteTup);
bool isView = get_rel_relkind(pg_rewrite->ev_class) == RELKIND_VIEW;
bool isMatView = get_rel_relkind(pg_rewrite->ev_class) == RELKIND_MATVIEW;
bool isDifferentThanRef = pg_rewrite->ev_class != pg_depend->refobjid;
systable_endscan(rscan);
relation_close(rewriteRel, AccessShareLock);
if (isView && isDifferentThanRef)
if ((isView || isMatView) && isDifferentThanRef)
{
return pg_rewrite->ev_class;
}