On 2013-02-04 11:52:05 -0500, Tom Lane wrote: > Andres Freund <and...@2ndquadrant.com> writes: > > I absolutely hate to suggest it, but what about storing the last > > vacuum's xmin horizon in the main table's pg_class.options in the back > > branches? > > Not workable. This would require a non-in-place update of the table's > pg_class row (at least in cases where the option wasn't stored already). > Which would require VACUUM to have an XID, which would make a whole lot > of assumptions fall over.
Don't get me wrong, I hate that solution, but that specific issue seems relatively easily solvable by pre-creating the option intially in vacuum_rel() in a separate transaction before entering lazy_vacuum_rel(). I unfortunately don't yet see a robust way without storing the last used horizon :(. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers