| From: | "Tianchen Zhang" <zhang_tian_chen(at)163(dot)com> |
|---|---|
| To: | "Chao Li" <li(dot)evan(dot)chao(at)gmail(dot)com> |
| Cc: | "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re:Re: pg_resetwal: Fix wrong directory in log output |
| Date: | 2026-02-03 06:16:56 |
| Message-ID: | 3e324567.479a.19c22259dc6.Coremail.zhang_tian_chen@163.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
At 2026-02-03 10:13:53, "Chao Li" <li(dot)evan(dot)chao(at)gmail(dot)com> wrote:
>
>
>> On Feb 3, 2026, at 09:58, zhang_tian_chen(at)163(dot)com wrote:
>>
>> Hi hackers,
>>
>> There is a misuse of macro when we output directory information in KillExistingWALSummaries(), pg_resetwal.c. Which should be WALSUMMARYDIR instead of ARCHSTATDIR.
>>
>> Best regards,
>> Tianchen Zhang<v1-0001-Fix-incorrect-directory-macro-in-KillExistingWALS.patch>
>
>Indeed a bug. Looking at the code:
>
>```
>/*
> * Remove existing WAL summary files
> */
>static void
>KillExistingWALSummaries(void)
>{
> DIR *xldir;
>
> xldir = opendir(WALSUMMARYDIR);
> if (xldir == NULL)
> pg_fatal("could not open directory \"%s\": %m", WALSUMMARYDIR);
> ...
>
> if (errno)
> pg_fatal("could not read directory \"%s\": %m", WALSUMMARYDIR);
>
> if (closedir(xldir))
> pg_fatal("could not close directory \"%s\": %m", ARCHSTATDIR); <<=== It should really be WALSUMMARYDIR
>}
>```
>
>I guess closedir() is hard to fail, that’s why the problem has not been noticed earlier.
>
>The patch is straightforward and looks correct.
>
>Best regards,
>--
>Chao Li (Evan)
>HighGo Software Co., Ltd.
>https://www.highgo.com/
>
>
As the discussion above, I've updated the patch to v2 that also undefines the function-scoped marco at the end of corresponding fuctions.
Best regards,
Tianchen Zhang
| Attachment | Content-Type | Size |
|---|---|---|
| v2-0001-Fix-incorrect-directory-macro-in-KillExistingWALS.patch | application/octet-stream | 1.4 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bertrand Drouvot | 2026-02-03 06:19:13 | Re: Flush some statistics within running transactions |
| Previous Message | Pavel Luzanov | 2026-02-03 06:16:10 | Re: New year, new commitfest app improvements |