Re: [WIP] GUC for temp_tablespaces - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: [WIP] GUC for temp_tablespaces
Date
Msg-id 200705051004.l45A41k23735@momjian.us
Whole thread Raw
In response to Re: [WIP] GUC for temp_tablespaces  ("Jaime Casanova" <systemguards@gmail.com>)
Responses Re: [WIP] GUC for temp_tablespaces  ("Jaime Casanova" <systemguards@gmail.com>)
List pgsql-patches
Your patch has been added to the PostgreSQL unapplied patches list at:

    http://momjian.postgresql.org/cgi-bin/pgpatches

It will be applied as soon as one of the PostgreSQL committers reviews
and approves it.

---------------------------------------------------------------------------


Jaime Casanova wrote:
> On 5/3/07, Bruce Momjian <bruce@momjian.us> wrote:
> >
> > Your patch has been added to the PostgreSQL unapplied patches list at:
> >
>
> This is an updated version of the patch.
>
> Tom objections:
> - fd.c is too low level for calling code from commands/tablespace.c.
>   This was fixed adding a second parameter to BufFileCreateTemp() to send
>   the tblspcOid (this function is called from executor/nodeHashJoin.c,
>   utils/sort/logtape.c and utils/sort/tuplestore.c). Are these places ok?
>
> - RemovePgTempFilesInDir() has no support for removing temp files from
>   strange locations.
>   Per Tom suggestion temp files are now created in: base/pgsql_tmp and
>   pg_tblspc/$oid_tblspc/pgsql_tmp. So i just refactor RemovePgTempFiles()
>   to call RemovePgTempFilesInDir() with base and pg_tblspc/$oid_tblspc's
>   pgsql_tmp
>
> Other changes in code:
> fd.c:
> functions make_database_relative() and FileNameOpenFile() were marked
> as NOT_USED. objections to simply delete them?
> also added OpenTempFileInTblspc() to create the tempfilepath and call
> to PathNameOpenFile()
> buffile.c:
> also added a new tblspcOid field to BufFile struct to use it in extendBufFile()
>
>
> Problems:
> While the patch passes all the regression tests i still have a problem
> when doin this:
>
> sgerp=# set temp_tablespaces = '';
> ERROR:  tablespace "" does not exist
>
> note that setting temp_tablespaces = '' from postgresql.conf works well.
>
> maybe this is silly but it's too late for me... i will keep trying
> tomorrow unless someone else has fixed it.
>
> comments?
>
> --
> regards,
> Jaime Casanova
>
> "Programming today is a race between software engineers striving to
> build bigger and better idiot-proof programs and the universe trying
> to produce bigger and better idiots.
> So far, the universe is winning."
>                                        Richard Cook

[ Attachment, skipping... ]

>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Have you searched our list archives?
>
>                http://archives.postgresql.org

--
  Bruce Momjian  <bruce@momjian.us>          http://momjian.us
  EnterpriseDB                               http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

pgsql-patches by date:

Previous
From: "Jaime Casanova"
Date:
Subject: Re: [WIP] GUC for temp_tablespaces
Next
From: Peter Eisentraut
Date:
Subject: Re: Diagnostic functions