On Thu, Jan 6, 2022 at 3:47 AM Thomas Munro <thomas.munro@gmail.com> wrote: > Another problem is that relfilenodes are normally allocated with > GetNewOidWithIndex(), and initially match a relation's OID. We'd need > a new allocator, and they won't be able to match the OID in general > (while we have 32 bit OIDs at least).
Personally I'm not sad about that. Values that are the same in simple cases but diverge in more complex cases are kind of a trap for the unwary. There's no real reason to have them ever match. Yeah, in theory, it makes it easier to tell which file matches which relation, but in practice, you always have to double-check in case the table has ever been rewritten. It doesn't seem worth continuing to contort the code for a property we can't guarantee anyway.
Make sense, I have started working on this idea, I will try to post the first version by early next week.