Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cPJu0-0004TJ-15 for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Jan 2017 02:05:08 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1cPJtz-0004wt-HO for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Jan 2017 02:05:07 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1cPJsZ-0002jq-HY for pgsql-hackers@postgresql.org; Fri, 06 Jan 2017 02:03:39 +0000 Received: from momjian.us ([72.94.173.45]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1cPJsW-0001vh-Oa for pgsql-hackers@postgresql.org; Fri, 06 Jan 2017 02:03:38 +0000 Received: from bruce by momjian.us with local (Exim 4.84_2) (envelope-from ) id 1cPJsV-0002qi-Kk; Thu, 05 Jan 2017 21:03:35 -0500 Date: Thu, 5 Jan 2017 21:03:35 -0500 From: Bruce Momjian To: Alvaro Herrera Cc: Pg Hackers Subject: Re: Indirect indexes Message-ID: <20170106020335.GA3063@momjian.us> References: <20161229072807.b2p4ld55xmgwshhj@alvherre.pgsql> <20161230223530.gvu4azrsfqzr5eus@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20161230223530.gvu4azrsfqzr5eus@alvherre.pgsql> User-Agent: Mutt/1.5.23 (2014-03-12) X-Pg-Spam-Score: -5.1 (-----) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org On Fri, Dec 30, 2016 at 07:35:30PM -0300, Alvaro Herrera wrote: > Attached is v4, which fixes a couple of relatively minor bugs. There > are still things to tackle before this is committable, but coding review > of the new executor node would be welcome. > > The big remaining item is still fitting the PK data in TIDs 6 bytes. > I've been looking at reworking the btree code to allow for an arbitrary > size; it doesn't look impossible although it's going to be rather > invasive. Also, vacuuming: my answer continues to be that the killtuple > interface should be good enough, but it's possible to vacuum the index > separately from vacuuming the table anyway if you do a full scan and > check the PK tuples for each indirect tuple. > > This patch implements killtuple: a scan that sees an indirect tuple not > returning anything from the heap marks the tuple as LP_DEAD. Later, > when the page is about to be split, those tuples are removed. > > I also have a note in the code about not inserting an indirect tuple > when an identical one already exists. This is a correctness issue: we > return duplicated heap rows in certain cases. I still question the value of this patch as it requires user configuration vs. more aggressive HOT/WARM updates. -- Bruce Momjian http://momjian.us EnterpriseDB http://enterprisedb.com + As you are, so once was I. As I am, so you will be. + + Ancient Roman grave inscription + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers