On 17.12.21 05:47, Amit Kapila wrote:
I think in the above sentence, you mean to say "dropped from the publication". So, IIUC, you are proposing that if one drops a column that was part of the column list of a relation in a publication, an error will be raised. Also, if the user specifies CASCADE in Alter Table ... Drop Column, then we drop the relation from publication. Is that right? BTW, this is somewhat on the lines of what row_filter patch is also doing where if the user drops the column that was part of row_filter for a relation in publication, we give an error and if the user tries to drop the column with CASCADE then the relation is removed from the publication.
That looks correct. Consider how triggers behave: Dropping a column that a trigger uses (either in UPDATE OF or a WHEN condition) errors with RESTRICT and drops the trigger with CASCADE.