Received: from localhost (maia-5.hub.org [200.46.204.182]) by postgresql.org (Postfix) with ESMTP id 86EA89FB59A for ; Tue, 23 Jan 2007 05:33:44 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.182]) (amavisd-new, port 10024) with ESMTP id 98176-06 for ; Tue, 23 Jan 2007 05:33:38 -0400 (AST) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.4 Received: from nf-out-0910.google.com (nf-out-0910.google.com [64.233.182.190]) by postgresql.org (Postfix) with ESMTP id 312979FB298 for ; Tue, 23 Jan 2007 05:33:41 -0400 (AST) Received: by nf-out-0910.google.com with SMTP id x4so167183nfb for ; Tue, 23 Jan 2007 01:33:39 -0800 (PST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:user-agent:mime-version:to:cc:subject:references:in-reply-to:content-type:content-transfer-encoding:sender; b=r/ieAaMExUWzlOORIQXCHrnwFmVegORH3Y2VZb90DfXQa1byMpL00kfK5XULfvvg+QI1qG6FI0Rz7WIkDZvvznQ+7cQ54MVjJS4qrJip2AHT0Of8Hzqmt9orNRW3kqPlTvqWK2SZx63vvsLMoLESTIK/5BWvyBsLwyD1lMhI1n8= Received: by 10.49.43.2 with SMTP id v2mr692746nfj.1169544819606; Tue, 23 Jan 2007 01:33:39 -0800 (PST) Received: from ?192.168.1.34? ( [81.107.201.197]) by mx.google.com with ESMTP id r34sm1816336nfc.2007.01.23.01.33.37; Tue, 23 Jan 2007 01:33:38 -0800 (PST) Message-ID: <45B5D668.5050406@enterprisedb.com> Date: Tue, 23 Jan 2007 09:33:28 +0000 From: Heikki Linnakangas User-Agent: Icedove 1.5.0.8 (X11/20061116) MIME-Version: 1.0 To: Pavan Deolasee CC: Martijn van Oosterhout , pgsql-hackers@postgresql.org Subject: Re: Free space management within heap page References: <2e78013d0701230018m7bebdd35t32bdc8ea786511e8@mail.gmail.com> <20070123084846.GC19527@svana.org> <2e78013d0701230103y1d587db9q6733adca0ca92ca0@mail.gmail.com> In-Reply-To: <2e78013d0701230103y1d587db9q6733adca0ca92ca0@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200701/1038 X-Sequence-Number: 96939 Pavan Deolasee wrote: > One assumption I am making here is that its sufficient to mark the line > pointer > "unused" (reset LP_USED flag) even though there is an index entry pointing > to > the tuple. During index scan, we anyways check for ItemIdIsUsed() before > proceeding further. I know it might break the ctid chain, but does that > really > matter ? I don't see any reason why somebody would need to follow ctid > chain > past a dead tuple. You can't clear the LP_USED flag, but you could use the LP_DELETE flag that's currently not used in heap pages. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com