Received: from localhost (maia-3.hub.org [200.46.204.184]) by postgresql.org (Postfix) with ESMTP id 893689FB324 for ; Thu, 5 Jul 2007 03:27:13 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.184]) (amavisd-maia, port 10024) with ESMTP id 00234-06 for ; Thu, 5 Jul 2007 03:27:01 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from oxford.xeocode.com (unknown [87.127.95.194]) by postgresql.org (Postfix) with ESMTP id 3C7D09FA65C for ; Thu, 5 Jul 2007 03:27:04 -0300 (ADT) Received: from localhost ([127.0.0.1] helo=oxford.xeocode.com) by oxford.xeocode.com with esmtp (Exim 4.67) (envelope-from ) id 1I6Knl-0001Ol-7d; Thu, 05 Jul 2007 07:26:53 +0100 From: Gregory Stark To: "Tom Lane" Cc: "Pavel Stehule" , "Bruce Momjian" , "Jim C. Nasby" , "Alvaro Herrera" , "PostgreSQL-development" Subject: Re: what is difference between LOCAL and GLOBAL TEMP TABLES in PostgreSQL In-Reply-To: <3407.1183608067@sss.pgh.pa.us> (Tom Lane's message of "Thu, 05 Jul 2007 00:01:07 -0400") Organization: EnterpriseDB References: <20070703205746.GW85497@nasby.net> <200707040320.l643KRh09981@momjian.us> <162867790707040022g3d21beddsb6949e5f225be650@mail.gmail.com> <87r6nnx3jk.fsf@oxford.xeocode.com> <3407.1183608067@sss.pgh.pa.us> X-Draft-From: ("nnimap+mail01.enterprisedb.com:INBOX" 25118) Date: Thu, 05 Jul 2007 07:26:49 +0100 Message-ID: <87ejjnwel2.fsf@oxford.xeocode.com> User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200707/128 X-Sequence-Number: 105043 "Tom Lane" writes: > Gregory Stark writes: >>> 2007/7/4, Bruce Momjian : >> The solution is to fix the bloat, not add a work-around. > >> The bloat is a direct consequence of performing DDL in the midst of an OLTP >> transaction. > > Hardly. It's a consequence of our current implementation of temp > tables; that does not necessarily imply that we cannot fix it without > an API change. Sure, we could change our regular temporary tables to not create new records in pg_class at all, but I don't think it would make a big difference to DSS users. And I think for OLTP you would still want all the other advantages the standard api gives you. -- Gregory Stark EnterpriseDB http://www.enterprisedb.com