Making temp tables' toast tables be temp - Mailing list pgsql-hackers

From Tom Lane
Subject Making temp tables' toast tables be temp
Date
Msg-id 11902.1185378655@sss.pgh.pa.us
Whole thread Raw
Responses Re: Making temp tables' toast tables be temp  (Gregory Stark <stark@enterprisedb.com>)
List pgsql-hackers
Currently, a toast table attached to a temporary table is treated much
as though it were a regular permanent table: accesses to it go through
shared buffers and are WAL-logged.  Aside from the obvious performance
penalties, this means that backends may sometimes acquire open file
pointers for temporary toast tables of other backends, which can have
unpleasant consequences.  Yesterday someone reported running out of
disk space because of dangling references to nominally-dropped temp
tables:
http://archives.postgresql.org/pgsql-bugs/2007-07/msg00122.php

So I'm thinking it might be time to fix this.  After checking the
code, it seems like it'd be a reasonably small patch if we establish
a convention that toast tables for a temp schema pg_temp_nnn are
kept in an associated dedicated schema, named something like
pg_temp_nnn_toast or pg_toast_temp_nnn.  Then functions like
isOtherTempNamespace() could still recognize these tables as temp.
It'd mean a bit more clutter in pg_namespace though.

Comments?
        regards, tom lane


pgsql-hackers by date:

Previous
From: "Mark Wong"
Date:
Subject: Re: Machine available for community use
Next
From: "Gavin M. Roy"
Date:
Subject: Re: Machine available for community use