On Sun, Aug 28, 2016 at 11:25 PM, Craig Ringer <craig@2ndquadrant.com> wrote:
> What I'd really like is to be able to ask transam.c to handle the
> xid_in_recent_past logic, treating an attempt to read an xid from
> beyond the clog truncation threshold as a soft error indicating
> unknown xact state. But that involves delving into slru.c, and I
> really, really don't want to touch that for what should be a simple
> and pretty noninvasive utility function.
I think you're going to have to bite the bullet and do that, though, because ...
> A PG_TRY to trap ERRCODE_UNDEFINED_FILE seems like it'd be sufficient,
...I don't think this has any chance of being acceptable. You can't
catch errors and not re-throw them. That's bad news.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company