Received: from localhost (maia-1.hub.org [200.46.204.191]) by postgresql.org (Postfix) with ESMTP id CB8889FB91E for ; Fri, 13 Apr 2007 13:51:42 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.191]) (amavisd-maia, port 10024) with ESMTP id 95731-01-4 for ; Fri, 13 Apr 2007 13:51:39 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from vms048pub.verizon.net (vms048pub.verizon.net [206.46.252.48]) by postgresql.org (Postfix) with ESMTP id 183F19FBA90 for ; Fri, 13 Apr 2007 13:51:39 -0300 (ADT) Received: from [192.168.7.5] ([71.101.4.76]) by vms048.mailsrvcs.net (Sun Java System Messaging Server 6.2-6.01 (built Apr 3 2006)) with ESMTPA id <0JGG00ALL3R6J2V1@vms048.mailsrvcs.net> for pgsql-sql@postgresql.org; Fri, 13 Apr 2007 11:42:43 -0500 (CDT) Date: Fri, 13 Apr 2007 12:42:36 -0400 From: Joe Subject: Re: A long-running transaction In-reply-to: <20070413114919.GA31083@phlogiston.dyndns.org> To: Andrew Sullivan Cc: pgsql-sql@postgresql.org Message-id: <1176482556.782.83.camel@pampa> Organization: Freedom Circle, LLC MIME-version: 1.0 X-Mailer: Evolution 2.10.0 FreeBSD GNOME Team Port Content-type: text/plain Content-transfer-encoding: 7bit References: <461261AD.6060108@herakles.homelinux.org> <20070403201420.GB1519@phlogiston.dyndns.org> <461BBE33.9030807@herakles.homelinux.org> <20070410165523.GB20033@phlogiston.dyndns.org> <461C07A5.30000@herakles.homelinux.org> <20070411133407.GB22510@phlogiston.dyndns.org> <461CEF66.4010907@herakles.homelinux.org> <20070411154923.GA22771@phlogiston.dyndns.org> <461ED6C2.2010200@herakles.homelinux.org> <20070413114919.GA31083@phlogiston.dyndns.org> X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200704/146 X-Sequence-Number: 28146 Hi Andrew, On Fri, 2007-04-13 at 07:49 -0400, Andrew Sullivan wrote: > Because in the general case, you need the intermediate rows. The > problem is that you'd have to write a special piece of code to catch > the case where nobody else can see the row that you're about to > expire, and that test isn't free. Therefore, you do it the same way > any other row gets expired. Just curious: is there a way to defeat MVCC? i.e., if you can lock the database exclusively, there won't be any readers or writers? Joe