Received: from maia.hub.org (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id 99BA363244A for ; Sun, 25 Apr 2010 18:51:40 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 37612-08 for ; Sun, 25 Apr 2010 21:51:30 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from cdptpa-omtalb.mail.rr.com (cdptpa-omtalb.mail.rr.com [75.180.132.123]) by mail.postgresql.org (Postfix) with ESMTP id 20797631E46 for ; Sun, 25 Apr 2010 18:51:29 -0300 (ADT) X-Authority-Analysis: v=1.1 cv=MoTY9QBVwAhcB2GH59FwCsmLFwRIhosZyZPAEaxcLvM= c=1 sm=0 a=5OnsrEKmeHYA:10 a=IkcTkHD0fZMA:10 a=qCTYjJJ2g1SgQhsHZAUATw==:17 a=xAFKknK2jWKDSGAEcVAA:9 a=Vf16wrzSwSQ5o7TM06AA:7 a=Nb4B2-cEnDLcPHZE0oVKugpsJiUA:4 a=QEXdDO2ut3YA:10 a=qCTYjJJ2g1SgQhsHZAUATw==:117 X-Cloudmark-Score: 0 X-Originating-IP: 98.27.48.207 Received: from [98.27.48.207] ([98.27.48.207:44292] helo=[192.168.10.103]) by cdptpa-oedge04.mail.rr.com (envelope-from ) (ecelerity 2.2.2.39 r()) with ESMTP id DF/80-23257-069B4DB4; Sun, 25 Apr 2010 21:51:28 +0000 Message-ID: <4BD4B960.5010204@dunslane.net> Date: Sun, 25 Apr 2010 17:51:28 -0400 From: Andrew Dunstan User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.0.12) Gecko/20071019 Fedora/1.0.9-3.fc6 pango-text SeaMonkey/1.0.9 MIME-Version: 1.0 To: Josh Berkus CC: pgsql-hackers@postgresql.org Subject: Re: global temporary tables References: <4BD4B44B.6030406@agliodbs.com> In-Reply-To: <4BD4B44B.6030406@agliodbs.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0.8 tagged_above=-10 required=5 tests=BAYES_50=0.8 X-Spam-Level: X-Archive-Number: 201004/1176 X-Sequence-Number: 161288 Josh Berkus wrote: > Robert, > >> (1). What I *think* it is supposed to mean is that the table is a >> permanent object which is "globally" visible - that is, it's part of >> some non-temp schema like public or $user and it's column definitions >> etc. are visible to all backends - and it's not automatically removed >> on commit, backend exit, etc. - but the *contents* of the table are >> temporary and backend-local, so that each new backend initially sees >> it as empty and can then insert, update, and delete data independently >> of what any other backend does. > > While closer to the standard, the above definition is a lot less > useful than what I believe a lot of people want, which is a table > which is globally visible, but has no durability; that is, it does not > get WAL-logged or recovered on restart. Certainly this latter > definition would be far more useful to support materialized views. These are not mutually exclusive features. What you're asking for has value, certainly, but it's not a temp table in the standard's terms (which is a feature that also has value, I believe). cheers andrew