> 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't happen. I think..
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
No comments:
Post a Comment