On Thu, 2008-08-07 at 10:20 -0400, Alvaro Herrera wrote: > Simon Riggs wrote: > > > > Currently, we calculate a single OldestXmin across all snapshots on the > > assumption that any transaction might access any table. > > > > I propose creating "Visibility Groups" that *explicitly* limit the > > ability of a transaction to access data outside its visibility group(s). > > By default, visibility_groups would be NULL, implying potential access > > to all tables. > > I think this is a cumbersome thing to use. We can do better -- right > now we keep closer track of open snapshots, which means that if there is > a long running transaction that refreshes its snapshots periodically, > vacuum doesn't need to keep all the dead rows that it can no longer see. > > We can improve vacuum to be able to remove a lot more dead rows than we > do currently. This is invisible to the user, which IMHO is a better > user interface than what you are proposing.
Agreed, but this is a step even beyond that. -- Simon Riggs www.2ndQuadrant.com PostgreSQL Training, Services and Support -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers