GIN pending clean up is not interruptable

Поиск
Список
Период
Сортировка
От Jeff Janes
Тема GIN pending clean up is not interruptable
Дата
Msg-id CAMkU=1wtAeZQCNtT6-b65y0gK=4FntYFssXmQ4=6DF_kZcj5ZQ@mail.gmail.com
обсуждение исходный текст
Ответы Re: GIN pending clean up is not interruptable  (Andres Freund <andres@anarazel.de>)
Список pgsql-hackers
When a user backend (as opposed to vacuum or autoanalyze) gets burdened with cleaning up the GIN pending list, it does not call CHECK_FOR_INTERRUPTS().

Since cleaning does a lot of random IO, it can take a long time and it is not nice to be uninterruptable.

The attached patch adds an else branch to call CHECK_FOR_INTERRUPTS().  

But I think we could instead just call vacuum_delay_point unconditionally.  It calls CHECK_FOR_INTERRUPTS(), and if not in a throttled vacuum it does nothing else.  (That is how ANALYZE handles it.)

This issue is in all branches.

Cheers,

Jeff
Вложения

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

Предыдущее
От: Gideon Dresdner
Дата:
Сообщение: can't coax query planner into using all columns of a gist index
Следующее
От: Robert Haas
Дата:
Сообщение: Re: Foreign join pushdown vs EvalPlanQual