Re: Undocumented behavior od DROP SCHEMA ... CASCADE

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Undocumented behavior od DROP SCHEMA ... CASCADE
Дата
Msg-id 25576.1471010504@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Undocumented behavior od DROP SCHEMA ... CASCADE  ("David G. Johnston" <david.g.johnston@gmail.com>)
Ответы Re: Undocumented behavior od DROP SCHEMA ... CASCADE  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Undocumented behavior od DROP SCHEMA ... CASCADE  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Список pgsql-docs
"David G. Johnston" <david.g.johnston@gmail.com> writes:
> On Fri, Aug 12, 2016 at 8:54 AM, Vik Fearing <vik@2ndquadrant.fr> wrote:
>> I think the OP is complaining that cascading to b.v is not sufficiently
>> documented.  It seems logical to me that this would be the correct
>> behavior, but since at least one person got confused enough about it to
>> come and tell us, we should probably add some kind of warning or something.

> ​Yeah, it should probably be modified to something like:

> Automatically drop objects (tables, functions, etc...) that are contained
> in the schema.  Each object dropped is also done with the CASCADE option.
> This means that others schemas will be affected if they depend on objects
> in the named schema.

If we're going to add a warning about CASCADE being recursive, it would
logically need to be added to every last DROP command that has a CASCADE
option, which is most of them.  I don't necessarily object to that, but
we'd need a more boiler-plate, copy-and-pasteable phrasing.

A quick survey says that DROP SCHEMA is just about the only such command
that isn't documented with wording along the lines of "Automatically drop
objects that depend on the <whatever>", often with a parenthetical "such
as" to illustrate what sorts of objects might be dependent.  I think the
variant wording for DROP SCHEMA was intentional, with the thought that it
was easy to specify exactly which objects "depend on" a schema --- but is
that decision contributing to the confusion?

I'm inclined to suggest that maybe the generic phrasing could be
"Automatically drop objects that depend on the <whatever> [(such as ...)],
and in turn all objects that depend on those objects".

            regards, tom lane


В списке pgsql-docs по дате отправления:

Предыдущее
От: "David G. Johnston"
Дата:
Сообщение: Re: Undocumented behavior od DROP SCHEMA ... CASCADE
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Wording in TABLESAMPLE documentation