Re: Existence check for suitable index in advance when concurrently refreshing.

Поиск
Список
Период
Сортировка
От Fujii Masao
Тема Re: Existence check for suitable index in advance when concurrently refreshing.
Дата
Msg-id CAHGQGwG8UF2zt6pyFAh6wkCpEY=O6_UCSMhtXx5jnTgyA_7sWQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Existence check for suitable index in advance when concurrently refreshing.  (Michael Paquier <michael.paquier@gmail.com>)
Ответы Re: Existence check for suitable index in advance when concurrently refreshing.  (Fujii Masao <masao.fujii@gmail.com>)
Список pgsql-hackers
On Tue, Feb 9, 2016 at 9:11 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:
> On Tue, Feb 9, 2016 at 4:27 PM, Fujii Masao <masao.fujii@gmail.com> wrote:
>> Thanks for updating the patch!
>> Attached is the updated version of the patch.
>> I removed unnecessary assertion check and change of source code
>> that you added, and improved the source comment.
>> Barring objection, I'll commit this patch.
>
> So, this code basically duplicates what is already in
> refresh_by_match_merge to check if there is a UNIQUE index defined. If
> we are sure that an error is detected earlier in the code as done in
> this patch, wouldn't it be better to replace the error message in
> refresh_by_match_merge() by an assertion?

I'm OK with an assertion if we add source comment about why
refresh_by_match_merge() can always guarantee that there is
a unique index on the matview. Probably it's because the matview
is locked with exclusive lock at the start of ExecRefreshMatView(),
i.e., it's guaranteed that we cannot drop any indexes on the matview
after the first check is passed. Also it might be better to add
another comment about that the caller of refresh_by_match_merge()
must always check that there is a unique index on the matview before
calling that function, just in the case where it's called elsewhere
in the future.

OTOH, I don't think it's not so bad idea to just emit an error, instead.

Regards,

-- 
Fujii Masao



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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Mac OS: invalid byte sequence for encoding "UTF8"
Следующее
От: Fujii Masao
Дата:
Сообщение: Re: Existence check for suitable index in advance when concurrently refreshing.