Received: from maia.hub.org (maia-2.hub.org [200.46.204.251]) by mail.postgresql.org (Postfix) with ESMTP id 231A3B5DBD0 for ; Tue, 6 Sep 2011 23:58:57 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.251]) (amavisd-maia, port 10024) with ESMTP id 91420-09 for ; Wed, 7 Sep 2011 02:58:50 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from marajade.localdomain (97-64-237-59.client.mchsi.com [97.64.237.59]) by mail.postgresql.org (Postfix) with ESMTP id A9BFCB5D91F for ; Tue, 6 Sep 2011 23:58:50 -0300 (ADT) Received: from [192.168.1.116] (173-31-201-111.client.mchsi.com [173.31.201.111]) (Authenticated sender: andy) by marajade.localdomain (Postfix) with ESMTPA id 2819143B35; Tue, 6 Sep 2011 21:58:50 -0500 (CDT) Message-ID: <4E66DDE8.7080007@squeakycode.net> Date: Tue, 06 Sep 2011 21:58:48 -0500 From: Andy Colson User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.18) Gecko/20110707 Lightning/1.0b2 Thunderbird/3.1.11 MIME-Version: 1.0 To: Pavan Deolasee CC: pgsql-hackers Subject: REVIEW Single pass vacuum - take 2 References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-0.918 tagged_above=-5 required=5 tests=BAYES_00=-1.9, RDNS_DYNAMIC=0.982 X-Spam-Level: X-Archive-Number: 201109/325 X-Sequence-Number: 194514 On 08/22/2011 01:22 AM, Pavan Deolasee wrote: > Hi All, > > Here is a revised patch based on our earlier discussion. I implemented > Robert's idea of tracking the vacuum generation number in the line > pointer itself. For LP_DEAD line pointers, the lp_off/lp_len is unused > (and always set to 0 for heap tuples). We use those 30 bits to store > the generation number of the vacuum which would have potentially > removed the corresponding index pointers, if the vacuum finished > successfully. The pg_class information is used to know the status of > the vacuum, whether it failed or succeeded. 30-bit numbers are large > enough that we can ignore any wrap-around related issues. With this > change, we don't need any additional header or special space in the > page which was one of the main objection to the previous version. > > Other than this major change, I have added code commentary at relevant > places and also fixed the item.h comments to reflect the change. I > think the patch is ready for a serious review now. > > Thanks, > Pavan > Hi Pavan, I tried to apply your patch to git master (as of just now) and it failed. I assume that's what I should be checking out, right? -Andy