From: | Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> |
---|---|
To: | Simon Riggs <simon(at)2ndQuadrant(dot)com> |
Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Latest version of Hot Standby patch |
Date: | 2009-01-07 13:43:31 |
Message-ID: | 4964B183.3070209@enterprisedb.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Another annoyance I noticed while testing the case of a lot of
subtransactions (overflowing the procarray cache) is that when you have
a transaction with a lot of subtransactions open, getting the initial
snapshot fails, and the standby doesn't open for read-only queries.
Normally, GetRunningTransactionData determines the xid of the latest
running xid by scanning the procarray. If the subxid cache has
overflowed, it simply gives up. Comment there suggests that it could
call ReadNewTransactionId() instead, like it does when there's no active
xids in proc array. I think we should do that, or something else to
alleviate the problem.
When there's no xids in the procarray, couldn't we just use
latestCompletedXid instead of calling ReadNewTransactionId()?
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2009-01-07 13:45:45 | Re: Updates of SE-PostgreSQL 8.4devel patches (r1389) |
Previous Message | Stephen Frost | 2009-01-07 13:39:42 | Re: Do we still need constraint_exclusion? |