Bruce,
Another idea I discussed with Tom is having the slave _delay_ applying WAL files until all slave snapshots are ready.
Well, again, that only works for async mode. I personally think that's the correct solution for async. But for synch mode, I think we need to push the xids back to the master; generally if a user is running in synch mode they're concerned about failover time and zero data loss, so holding back the WAL files doesn't make sense.
Also, if you did delay applying WAL files on an async slave, you'd reach a point (perhaps after a 6-hour query) where it'd actually be cheaper to rebuild the slave than to apply the pent-up WAL files.
--Josh Berkus -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers