Re: clustering without locking

From: "Fujii Masao" <masao(dot)fujii(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: clustering without locking
Date: 2008-05-02 07:11:24
Message-ID: 3f0b79eb0805020011k47757edcib7c64b6db6e73b65@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, May 2, 2008 at 9:12 AM, fschmidt <fschmidt(at)gmail(dot)com> wrote:
>
> An implementation of clustering without locking would start by comparing the
> index to the table from the beginning to find the first mismatch. Rows
> before the mismatch are fine, and can be left alone. From here on, go
> through the index and rewrite each row in order. This will put the rows at
> the end of the table in cluster order. When done, vacuum the table. This
> will result in a clustered table without any locking needed. Those few
> records that were updated while clustering was happening will be out of
> order, but that should only be a few.

In your proposal, a large amount of dead tuple can be generated in both
table and index. This is a serious problem that spoils the effect of clustering.

--
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Sanjaya Kumar Patel 2008-05-02 10:02:29 High resolution PostgreSQL Logo
Previous Message Martijn van Oosterhout 2008-05-02 06:18:39 Re: clustering without locking