From: | "Bossart, Nathan" <bossartn(at)amazon(dot)com> |
---|---|
To: | Andres Freund <andres(at)anarazel(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, Julien Rouhaud <rjuju123(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Avoid erroring out when unable to remove or parse logical rewrite files to save checkpoint work |
Date: | 2022-01-19 22:48:18 |
Message-ID: | FBA5CE02-5E71-4895-AE95-C242B24B7EAB@amazon.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 1/19/22, 11:08 AM, "Andres Freund" <andres(at)anarazel(dot)de> wrote:
> On 2022-01-19 13:34:21 -0500, Tom Lane wrote:
>> As far as the patch itself goes, I agree that failure to unlink
>> is noncritical, because such a file would have no further effect
>> and we can just ignore it.
>
> I don't agree. We iterate through the directory regularly on systems with
> catalog changes + logical decoding. An ever increasing list of gunk will make
> that more and more expensive. And I haven't heard a meaningful reason why we
> would have map-* files that we can't remove.
I think the other side of this is that we don't want checkpointing to
continually fail because of a noncritical failure. That could also
lead to problems down the road.
> Ignoring failures like this just makes problems much harder to debug and they
> tend to bite harder for it.
If such noncritical failures happened regularly, the server logs will
likely become filled with messages about it. Perhaps users may not
notice for a while, but I don't think the proposed patch would make
debugging excessively difficult.
Nathan
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2022-01-19 22:53:43 | Re: Avoid erroring out when unable to remove or parse logical rewrite files to save checkpoint work |
Previous Message | Tom Lane | 2022-01-19 22:47:57 | Re: Replace uses of deprecated Python module distutils.sysconfig |