From: | Thomas Munro <thomas(dot)munro(at)gmail(dot)com> |
---|---|
To: | Heikki Linnakangas <hlinnaka(at)iki(dot)fi> |
Cc: | Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>, Ronan Dunklau <ronan(dot)dunklau(at)aiven(dot)io>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Failures in constraints regression test, "read only 0 of 8192 bytes" |
Date: | 2024-03-10 21:32:09 |
Message-ID: | CA+hUKG+DsyK+brNKiKMyLX7g1TfErt3+Y5fERD+yJBVGRdStpQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, Mar 11, 2024 at 9:59 AM Thomas Munro <thomas(dot)munro(at)gmail(dot)com> wrote:
> On Mon, Mar 11, 2024 at 9:30 AM Heikki Linnakangas <hlinnaka(at)iki(dot)fi> wrote:
> > Hmm, I'm not sure if we need even smgrreleaseall() here anymore. It's
> > not required for correctness AFAICS. We don't do it in single-rel
> > invalidation in RelationCacheInvalidateEntry() either.
>
> I think we do, because we have missed sinval messages. It's unlikely
> but a relfilenode might have been recycled, and we might have file
> descriptors that point to the unlinked files. That is, there are new
> files with the same names and we need to open those ones.
... though I think you would be right if Dilip and Robert had
succeeded in their quest to introduce 56-bit non-cycling relfilenodes.
And for the record, we can also shoot ourselves in the foot in another
known case without sinval[1], so more work is needed here, but that
doesn't mean this sinval code path should also aim footwards.
From | Date | Subject | |
---|---|---|---|
Next Message | David Rowley | 2024-03-10 21:56:35 | Re: Invalid query generated by postgres_fdw with UNION ALL and ORDER BY |
Previous Message | Thomas Munro | 2024-03-10 20:59:52 | Re: Failures in constraints regression test, "read only 0 of 8192 bytes" |