X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org Received: from localhost (unknown [200.46.204.2]) by svr1.postgresql.org (Postfix) with ESMTP id 11130D1B83D for ; Sun, 29 Feb 2004 14:16:01 +0000 (GMT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024) with ESMTP id 87634-10 for ; Sun, 29 Feb 2004 10:15:57 -0400 (AST) Received: from bob.samurai.com (bob.samurai.com [205.207.28.75]) by svr1.postgresql.org (Postfix) with ESMTP id D0FCDD1E940 for ; Sun, 29 Feb 2004 10:15:53 -0400 (AST) Received: from localhost (localhost [127.0.0.1]) by bob.samurai.com (Postfix) with ESMTP id 3CBD01DBA; Sun, 29 Feb 2004 09:15:56 -0500 (EST) Received: from bob.samurai.com ([127.0.0.1]) by localhost (bob.samurai.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 58400-01; Sun, 29 Feb 2004 09:15:55 -0500 (EST) Received: from samurai.com (d226-89-59.home.cgocable.net [24.226.89.59]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by bob.samurai.com (Postfix) with ESMTP id 00EBC1DA6; Sun, 29 Feb 2004 09:15:53 -0500 (EST) Message-ID: <4041F41D.4050308@samurai.com> Date: Sun, 29 Feb 2004 09:15:57 -0500 From: Neil Conway User-Agent: Mozilla Thunderbird 0.5 (X11/20040221) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Jon Jensen Cc: pgsql-hackers@postgresql.org Subject: Re: Avoid MVCC using exclusive lock possible? References: In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at mailbox.samurai.com X-Virus-Scanned: by amavisd-new at postgresql.org X-Archive-Number: 200402/984 X-Sequence-Number: 50573 Jon Jensen wrote: > How would you do a rollback if an error occurred mid-query? How would you > keep your table from being a big pile of junk if a power failure happened > during the query? As most non-MVCC database do: by writing WAL records. In theory, it seems to me that we could implement an overwriting storage manager for PostgreSQL (i.e. we'd have both MVCC and non-MVCC, and allow users to choose at runtime). It would require a *lot* of work, but I can't see any fundamental reason why it wouldn't be possible. -Neil