Received: from localhost (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id E52A164FE0F for ; Mon, 17 Nov 2008 15:21:23 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 33027-04 for ; Mon, 17 Nov 2008 15:21:20 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.175]) by mail.postgresql.org (Postfix) with ESMTP id 23A6164FDFD for ; Mon, 17 Nov 2008 15:21:19 -0400 (AST) Received: by ug-out-1314.google.com with SMTP id k40so497240ugc.7 for ; Mon, 17 Nov 2008 11:21:18 -0800 (PST) Received: by 10.67.10.18 with SMTP id n18mr1458382ugi.45.1226949678609; Mon, 17 Nov 2008 11:21:18 -0800 (PST) Received: from ?80.222.79.63? (dsl-hkibrasgw2-fe4fde00-63.dhcp.inet.fi [80.222.79.63]) by mx.google.com with ESMTPS id y7sm4721198ugc.22.2008.11.17.11.21.16 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 17 Nov 2008 11:21:17 -0800 (PST) Message-ID: <4921C42A.3030600@enterprisedb.com> Date: Mon, 17 Nov 2008 21:21:14 +0200 Organization: EnterpriseDB User-Agent: Mozilla-Thunderbird 2.0.0.16 (X11/20080724) MIME-Version: 1.0 To: Emmanuel Cecchet CC: Tom Lane , pgsql-hackers@postgresql.org Subject: Re: Transactions and temp tables References: <48EA7B12.6050906@frogthinker.org> <48EB0551.50205@enterprisedb.com> <48EB95B7.10604@frogthinker.org> <48EC7EB5.5020001@enterprisedb.com> <48ECAA8F.3070306@frogthinker.org> <28137.1223472191@sss.pgh.pa.us> <48ECBBC2.6060003@frogthinker.org> <29132.1223475486@sss.pgh.pa.us> <48EFA13C.2060407@frogthinker.org> <490F804A.60108@enterprisedb.com> <490FB4B3.908@frogthinker.org> <49106B10.2090407@enterprisedb.com> <4910DFC0.3080301@frogthinker.org> <4914CD14.2060608@frogthinker.org> In-Reply-To: <4914CD14.2060608@frogthinker.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit From: Heikki Linnakangas X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0 tagged_above=0 required=5 tests=none X-Spam-Level: X-Archive-Number: 200811/1174 X-Sequence-Number: 127886 Emmanuel Cecchet wrote: > As I have not found yet an elegant solution to deal with the DROP > CASCADE issue, here is a simpler patch that handles temp tables that are > dropped at commit time. This is a good first step and we will try to > elaborate further to support ON COMMIT DELETE ROWS. The problem with stopping the postmaster seems to still be there.. All the problems are centered around locking. We need to address that and decide what is sane locking behavior wrt. temp tables and 2PC. First, there's the case where a temp table is created and dropped in the same transaction. It seems perfectly sane to me to simply drop all locks on the dropped table at PREPARE TRANSACTION. Does anyone see a problem with that? If not, we might as well do that for all tables, not just temporary ones. It seems just as safe for non-temporary tables. Secondly, there's the case of accessing a ON COMMIT DELETE ROWS table. There too, could we simply drop the locks at PREPARE TRANSACTION? I can't immediately see anything wrong with that. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com