| 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: Hot Standby dev build (v8) |
| Date: | 2009-01-16 20:09:35 |
| Message-ID: | 4970E97F.9040504@enterprisedb.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Simon Riggs wrote:
> On Fri, 2009-01-16 at 16:33 +0200, Heikki Linnakangas wrote:
>> I don't think RecentGlobalXmin is good enough here:
>>
>>> ! /*
>>> ! * We would like to set an accurate latestRemovedXid, but there
>>> ! * is no easy way of obtaining a useful value. So we use the
>>> ! * probably far too conservative value of RecentGlobalXmin instead.
>>> ! */
>>> ! xlrec_delete.latestRemovedXid = RecentGlobalXmin;
>>> ! rdata[0].data = (char *) &xlrec_delete;
>>> ! rdata[0].len = SizeOfBtreeDelete;
>> RecentGlobalXmin is just a hint, it lags behind the real oldest xmin
>> that GetOldestXmin() would return. If another backend has a more recent
>> RecentGlobalXmin value, and has killed more recent tuples on the page,
>> the latestRemovedXid written here is too old.
>
> What do you think we should do instead?
Dunno. Maybe call GetOldestXmin().
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2009-01-16 20:10:40 | Re: FWD: Re: Updated backslash consistency patch |
| Previous Message | Tom Lane | 2009-01-16 20:06:17 | Re: FWD: Re: Updated backslash consistency patch |