Re: [PERFORM] Big IN() clauses etc : feature proposal - Mailing list pgsql-hackers

From Jim C. Nasby
Subject Re: [PERFORM] Big IN() clauses etc : feature proposal
Date
Msg-id 20060511225842.GZ99570@pervasive.com
Whole thread Raw
In response to Re: [PERFORM] Big IN() clauses etc : feature proposal  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Thu, May 11, 2006 at 06:08:36PM -0400, Tom Lane wrote:
> "Jim C. Nasby" <jnasby@pervasive.com> writes:
> > I'd hope that wasn't what's happening... is the backend smart enough to
> > know not to fsync anything involved with the temp table?
>
> The catalog entries required for it have to be fsync'd, unless you enjoy
> putting your entire database at risk (a bad block in pg_class, say,
> would probably take out more than one table).

Yeah, thought about that after sending... :(

> It's interesting to speculate about keeping such catalog entries in
> child tables of pg_class etc that are themselves temp tables.  Resolving
> the apparent circularity of this is left as an exercise for the reader.

Well, since it'd be a system table with a fixed OID there could
presumably be a special case in the recovery code for it, though that's
pretty fugly sounding.

Another alternative would be to support global temp tables... I think
that would handle all the complaints of the OP except for the cost of
analyze. I suspect this would be easier to do than creating a special
type of temp table that used tuplestore instead of the full table
framework, and it'd certainly be more general-purpose.
--
Jim C. Nasby, Sr. Engineering Consultant      jnasby@pervasive.com
Pervasive Software      http://pervasive.com    work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf       cell: 512-569-9461

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [PERFORM] Big IN() clauses etc : feature proposal
Next
From: Tom Lane
Date:
Subject: Continuing "pgstat update timeout" failures in buildfarm