Move related functions next to each other in pg_publication.c.

This also improves comments atop is_publishable_class().

Author: Peter Smith
Reviewed-by: Amit Kapila, Hou Zhijie
Discussion: https://postgr.es/m/CAHut+PupQ5UW9A9ut0Yjt21J9tHhx958z5L0k8-9hTYf_NYqxA@mail.gmail.com
This commit is contained in:
Amit Kapila 2022-07-29 14:27:40 +05:30
parent bbe08b8869
commit 0234ed81e9

View File

@ -115,8 +115,8 @@ check_publication_add_schema(Oid schemaid)
* Returns if relation represented by oid and Form_pg_class entry * Returns if relation represented by oid and Form_pg_class entry
* is publishable. * is publishable.
* *
* Does same checks as the above, but does not need relation to be opened * Does same checks as check_publication_add_relation() above, but does not
* and also does not throw errors. * need relation to be opened and also does not throw errors.
* *
* XXX This also excludes all tables with relid < FirstNormalObjectId, * XXX This also excludes all tables with relid < FirstNormalObjectId,
* ie all tables created during initdb. This mainly affects the preinstalled * ie all tables created during initdb. This mainly affects the preinstalled
@ -140,6 +140,15 @@ is_publishable_class(Oid relid, Form_pg_class reltuple)
relid >= FirstNormalObjectId; relid >= FirstNormalObjectId;
} }
/*
* Another variant of is_publishable_class(), taking a Relation.
*/
bool
is_publishable_relation(Relation rel)
{
return is_publishable_class(RelationGetRelid(rel), rel->rd_rel);
}
/* /*
* Filter out the partitions whose parent tables were also specified in * Filter out the partitions whose parent tables were also specified in
* the publication. * the publication.
@ -179,15 +188,6 @@ filter_partitions(List *relids)
return result; return result;
} }
/*
* Another variant of this, taking a Relation.
*/
bool
is_publishable_relation(Relation rel)
{
return is_publishable_class(RelationGetRelid(rel), rel->rd_rel);
}
/* /*
* Returns true if any schema is associated with the publication, false if no * Returns true if any schema is associated with the publication, false if no
* schema is associated with the publication. * schema is associated with the publication.