From: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
---|---|
To: | Simon Riggs <simon(at)2ndQuadrant(dot)com>, Jim Nasby <Jim(dot)Nasby(at)bluetreble(dot)com> |
Cc: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, Zhaomo Yang <zhy001(at)cs(dot)ucsd(dot)edu>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, Robert Haas <robertmhaas(at)gmail(dot)com> |
Subject: | Re: Implementation of global temporary tables? |
Date: | 2015-07-15 12:26:31 |
Message-ID: | 55A65177.7070107@dunslane.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 07/15/2015 07:58 AM, Simon Riggs wrote:
>
> For me the design summary is this
>
> * CREATE GLOBAL TEMP TABLE creates catalog entries like a normal table
> but with different relkind
> * When we see a request to INSERT, DEL, UPD, SEL from the temp table,
> if it does not exist we create it as a TEMP table of the same name,
> using the Global's pg_class entry as a template
>
> That meets the SQL Standard and doesn't contain any visibility
> problems or need for new internals.
>
> The purpose of this feature is to automatically create a temp table
> with the same definition whenever needed. The discussion of "bloat" is
> just wrong. We create exactly the same amount of bloat as if we had
> typed CREATE TEMP TABLE. Optimising temp table entries in the catalog
> is another, separate patch, if we care.
>
>
Sounds fine in general. I'm a bit curious to know what are the locking
implications of vivifying the table on access.
cheers
andrew
From | Date | Subject | |
---|---|---|---|
Next Message | Pavel Stehule | 2015-07-15 12:40:21 | Re: Implementation of global temporary tables? |
Previous Message | Simon Riggs | 2015-07-15 11:58:51 | Re: Implementation of global temporary tables? |