Re: Bug: Unreferenced temp tables disables vacuum to update xid - Mailing list pgsql-hackers

From Gregory Stark
Subject Re: Bug: Unreferenced temp tables disables vacuum to update xid
Date
Msg-id 87ir254h3h.fsf@oxford.xeocode.com
Whole thread Raw
In response to Re: Bug: Unreferenced temp tables disables vacuum to update xid  (Gregory Stark <stark@enterprisedb.com>)
List pgsql-hackers
"Gregory Stark" <stark@enterprisedb.com> writes:

> "Joshua D. Drake" <jd@commandprompt.com> writes:
>
>> On Mon, 7 Jan 2008 11:58:29 -0500 (EST)
>> Bruce Momjian <bruce@momjian.us> wrote:
>>
>>> I assume it is this TODO item:
>>> 
>>>         o Prevent long-lived temporary tables from causing frozen-xid
>>>           advancement starvation
>>> 
>>>           The problem is that autovacuum cannot vacuum them to set
>>> frozen xids; only the session that created them can do that.
>>>           http://archives.postgresql.org/pgsql-general/2007-06/msg01645.php
>>> 
>>> but am confused how the fix worked.  Have all of these backends been
>>> active for 1 billion transactions?
>>
>> Well it certainly appears that the TODO item is related. However there
>> are a couple of differences.
>
> Yeah, it seems there are two bugs here. 1) temporary tables prevent frozen-xid
> advancement and 2) if a process dies at the wrong moment it's possible to
> temporary tables. Either one alone is pretty minor but I guess the combination
> is lethal.

oops, "2) if a process dies at the wrong moment it's possible to *leak*
temporary tables"


--  Gregory Stark EnterpriseDB          http://www.enterprisedb.com Ask me about EnterpriseDB's On-Demand Production
Tuning


pgsql-hackers by date:

Previous
From: Gregory Stark
Date:
Subject: Re: Bug: Unreferenced temp tables disables vacuum to update xid
Next
From: Darcy Buskermolen
Date:
Subject: Re: Bug: Unreferenced temp tables disables vacuum to update xid