| From: | Dapeng Wang <wangdp20191008(at)gmail(dot)com> |
|---|---|
| To: | Lakshmi N <lakshmin(dot)jhs(at)gmail(dot)com> |
| Cc: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
| Subject: | Re: Add missing CHECK_FOR_INTERRUPTS in autovacuum catalog scan loops |
| Date: | 2026-04-11 12:19:55 |
| Message-ID: | CAKx0Yhzmn=gdfsv7iZDZ1cjXqRLq0amUmESL83qjyxnFDqYVJQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Lakshmi N <lakshmin(dot)jhs(at)gmail(dot)com> 于2026年4月11日周六 13:02写道:
> Hi,
>
> On Fri, Apr 10, 2026 at 4:57 AM Dapeng Wang <wangdp20191008(at)gmail(dot)com>
> wrote:
>
>> Lakshmi N <lakshmin(dot)jhs(at)gmail(dot)com> 于2026年4月10日周五 16:39写道:
>>
>>> Hi hackers,
>>>
>>> I noticed CFI is missing while scanning pg_class for RELKIND_RELATION
>>> and RELKIND_TOASTVALUE. On a database with several thousands of tables,
>>> these scans can take a noticeable amount of time. Attached a patch to
>>> address this.
>>>
>>> Regards,
>>> Lakshmi
>>>
>> Hi Lakshmi,
>>
>> The patch applies cleanly to HEAD and compiles without warnings.
>> make check passes (one unrelated ICU collation diff).
>>
>> The two CHECK_FOR_INTERRUPTS() additions in do_autovacuum() look
>> correct and are well-placed at the top of each loop iteration,
>> before any resources are acquired.
>>
>> I noticed there are other similar catalog scan loops in
>> autovacuum.c that also lack CHECK_FOR_INTERRUPTS():
>>
>> - The pg_database scan loop around line 1854
>> - The pg_class scan loop around line 3664
>>
>> Should those be covered as well?
>>
>
> Updated the patch covering those two as well.
>
>
> Regards,
> Lakshmi
>
Hi Lakshmi,
The updated patch now covers all four catalog scan loops.
Applies cleanly, compiles without warnings, and all 247
regression tests pass.
Regards,
Dapeng Wang
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2026-04-11 14:09:58 | Re: some extra warnings from MSVC |
| Previous Message | Peter Eisentraut | 2026-04-11 10:37:15 | some extra warnings from MSVC |