mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
Fix ATSimpleRecursion() to allow recursion from a foreign table.
This is necessary in view of the changes to allow foreign tables to be
full members of inheritance hierarchies, but I (tgl) unaccountably missed
it in commit cb1ca4d800
.
Noted by Amit Langote, patch by Etsuro Fujita
This commit is contained in:
@ -4367,10 +4367,12 @@ ATSimpleRecursion(List **wqueue, Relation rel,
|
|||||||
AlterTableCmd *cmd, bool recurse, LOCKMODE lockmode)
|
AlterTableCmd *cmd, bool recurse, LOCKMODE lockmode)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
* Propagate to children if desired. Non-table relations never have
|
* Propagate to children if desired. Only plain tables and foreign tables
|
||||||
* children, so no need to search in that case.
|
* have children, so no need to search for other relkinds.
|
||||||
*/
|
*/
|
||||||
if (recurse && rel->rd_rel->relkind == RELKIND_RELATION)
|
if (recurse &&
|
||||||
|
(rel->rd_rel->relkind == RELKIND_RELATION ||
|
||||||
|
rel->rd_rel->relkind == RELKIND_FOREIGN_TABLE))
|
||||||
{
|
{
|
||||||
Oid relid = RelationGetRelid(rel);
|
Oid relid = RelationGetRelid(rel);
|
||||||
ListCell *child;
|
ListCell *child;
|
||||||
|
Reference in New Issue
Block a user