Re: [PATCHES] Tablespace for temporary objects and sort files

From: "Jaime Casanova" <systemguards(at)gmail(dot)com>
To: "Albert Cervera Areny" <albertca(at)hotpop(dot)com>
Cc: pgsql-patches(at)postgresql(dot)org, "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>
Subject: Re: [PATCHES] Tablespace for temporary objects and sort files
Date: 2007-01-15 04:16:10
Message-ID: c2d9e70e0701142016y64e1c99cj993e75414a63c3cd@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

On 1/13/07, Albert Cervera Areny <albertca(at)hotpop(dot)com> wrote:
> It was already possible to set the guc on postgresql.conf when I posted the
> patch...
>

ok... fixed... the problem was that this code only let
num_temp_tablespaces be greater than zero when we are in an
interactive command (eg. a SET command) but setting the guc from
postgresql.conf at startup time is not interactive so
num_temp_tablespaces is zero and when i try to get the first temp
tablespace to use (MyProcPid % num_temp_tablespaces) causes a floatin
exception (division by zero).

+ if (source >= PGC_S_INTERACTIVE && IsTransactionState())
+ {
+ /*
+ * Verify that all the names are valid tablspace names
+ * We do not check for USAGE rights should we?
+ */
+ foreach(l, namelist)
+ {
+ char *curname = (char *) lfirst(l);
+
+ if (get_tablespace_oid(curname) == InvalidOid)
+ ereport((source == PGC_S_TEST) ? NOTICE : ERROR,
+ (errcode(ERRCODE_UNDEFINED_OBJECT),
+ errmsg("tablespace \"%s\" does not exist", curname)));
+
+ num_temp_tablespaces++;
+ }
+ }

new patch added, with that piece of code refactored to let
num_temp_tablespaces get a value greater than zero always that the guc
is setted, i also add some docs.

the patch passes all 104 regression tests and all my tests as well...

i think the patch is ready to be applied to HEAD, any committer want
to review it?

--
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 Content-Type Size
temp_tablespaces-1.2.diff text/plain 14.7 KB

In response to

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message ITAGAKI Takahiro 2007-01-15 08:36:09 O_DIRECT support for Windows
Previous Message Matthew T. O'Connor 2007-01-14 22:49:27 Re: Autovacuum improvements