Re: index on function confuses drop table cascade on child

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: index on function confuses drop table cascade on child
Дата
Msg-id 26599.1288709492@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: index on function confuses drop table cascade on child  ("Kevin Grittner" <Kevin.Grittner@wicourts.gov>)
Список pgsql-bugs
"Kevin Grittner" <Kevin.Grittner@wicourts.gov> writes:
> Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> 3. Or, perhaps we could change recordDependencyOnSingleRelExpr so
>> that it generates a whole-table dependency on the target relation
>> even if there are no Vars in the expression.  This would make it
>> act much more like the regular-query context that
>> find_expr_references_walker is expecting --- in essence, since
>> we're fabricating a single-element rtable for
>> find_expr_references_walker to work with, we should fabricate the
>> implied whole-table dependency entry too.  But that seems a bit
>> weird too, and in particular it's not obvious whether to do that
>> if in fact the expression is empty, or doesn't contain any Var at
>> all.

> This one seems sensible *if* you assume that by the time it is
> called there is a known dependency on the particular relation -- for
> example, you are dealing with an index on that relation.  Is that a
> reasonable restriction on the use of the
> recordDependencyOnSingleRelExpr function?  If this was done, would
> it allow simplification of the index_create code you showed in #1?

Well, it doesn't really improve matters for the index_create code.
What it basically accomplishes so far as that's concerned is to
guarantee that there will be a (likely redundant) whole-table
dependency; which we could equally well guarantee from the other end,
a la my fix #1.

After sleeping on it I'm pretty well convinced that fix #1 is the
way to go; it's simple and gets rid of some code that was just trying
to be too cute.  If we had a clear example of some future use of
recordDependencyOnSingleRelExpr that would require a different behavior
for the expression-dependency-extraction code, I might want to change
that code instead; but we don't.

(Obviously some more comments around the dependency-extraction code will
be a good idea in any case.)

            regards, tom lane

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

Предыдущее
От: "Kevin Grittner"
Дата:
Сообщение: Fwd: ***SPAM*** Re: BUG #5739: postgresql will not start
Следующее
От: "heasley"
Дата:
Сообщение: BUG #5741: syslog line length