Re: Index build temp files - Mailing list pgsql-hackers

From Stephen Frost
Subject Re: Index build temp files
Date
Msg-id 20130109022548.GJ16126@tamriel.snowman.net
Whole thread Raw
In response to Re: Index build temp files  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Index build temp files
List pgsql-hackers
* Tom Lane (tgl@sss.pgh.pa.us) wrote:
> Simon Riggs <simon@2ndQuadrant.com> writes:
> > On 9 January 2013 00:04, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> >> I don't think it's a bug.  What you seem to be proposing is that CREATE
> >> INDEX ought to ignore temp_tablespaces and instead always put its temp
> >> files in the tablespace where the finished index will reside.
>
> > I don't think that's what he said.
>
> Then I misunderstood.  Stephen, what was your thought exactly about
> what should happen?

Perhaps this is more of a bug than I originally thought, given the
confusion and general expectation.

Here's what we're seeing:

postgresql.conf:
temp_tablespaces = 'temp_01,temp_02'

I have temp file logging on in postgresql.conf, so here's what we see:

LOG:  temporary file: path "base/pgsql_tmp/pgsql_tmp9221.4", size 204521472
CONTEXT:  SQL statement "create index table_key_idx on table (key) tablespace data_n04"

We observe the files being created under $DATA/base/pgsql_tmp/, ignoring
the temp tablespaces and not using the tablespace where the index is
ultimately created either.  I was speculating earlier that it should use
one or the other.  I'd be perfectly happy if it used one of the temp
tablespaces, but currently it's using pg_default regardless of the other
settings.
Thanks,
    Stephen

pgsql-hackers by date:

Previous
From: Josh Berkus
Date:
Subject: Save The Date: 4th Cluster Hackers Summit at pgCon 2013
Next
From: Tom Lane
Date:
Subject: Re: Index build temp files