Re: relation ### modified while in use

Поиск
Список
Период
Сортировка
От Hiroshi Inoue
Тема Re: relation ### modified while in use
Дата
Msg-id 39FE58A4.EBC77E27@tpf.co.jp
обсуждение исходный текст
Ответ на Re: relation ### modified while in use  (Alex Pilosov <alex@pilosoft.com>)
Ответы Re: relation ### modified while in use  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Tom Lane wrote:

> Alex Pilosov <alex@pilosoft.com> writes:
> > I think this happens after I create/modify tables which reference this
> > table. This is spontaneous, and doesn't _always_ happen...
>
> Um.  I was hoping it was something more easily fixable :-(.  What's
> causing the relcache to decide that the rel has been modified is the
> addition or removal of foreign-key triggers on the rel.  Which seems
> legitimate.  (It's barely possible that we could get away with allowing
> triggers to be added or deleted mid-transaction, but that doesn't feel
> right to me.)
>
> There are two distinct known bugs that allow the error to be reported.
> These have been discussed before, but to recap:
>
> 1. relcache will complain if the notification of cache invalidation
> arrives after transaction start and before first use of the referenced
> rel (when there was already a relcache entry left over from a prior
> transaction).  In this situation we should allow the change to occur
> without complaint, ISTM.  But the relcache doesn't currently have any
> concept of first reference versus later references.
>

Do we have a conclusion about this thread ?
If no,how about changing heap_open(r) so that they allocate
Relation descriptors after acquiring a lock on the table ?
We would use LockRelation() no longer.

Comments ?

Regards.
Hiroshi Inoue



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

Предыдущее
От: Tatsuo Ishii
Дата:
Сообщение: Re: Unicode conversion (Re: [COMMITTERS] pgsql (configure.in))
Следующее
От: The Hermit Hacker
Дата:
Сообщение: Re: WAL status update