Csaba Nagy wrote:
> and that means in fact that if you have
> continuously overlapping small transactions, the "blocking horizon"
> could be even blocked forever, as there'll always be a query running,
> and the new queries will always have the snapshot of the currently
> running ones because WAL recovery is stalled...
Hmm, no I don't think the WAL recovery can become completely stalled. To
completely stop progressing, we'd need to take a new snapshot that
includes transaction X, and at the same time be blocked on a vacuum
record that vacuums a tuple that's visible to transaction X. I don't
think that can happen, because for such a scenario to arise, in the
corresponding point in time in the master, there would've been a
scenario where the vacuum would've removed a tuple that would have been visible to a newly starting transaction. Which
can'thappen. I think..
-- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com