Re: Block level parallel vacuum WIP

From: Alex Ignatov <a(dot)ignatov(at)postgrespro(dot)ru>
To: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Block level parallel vacuum WIP
Date: 2016-08-23 12:55:31
Message-ID: fe81bcc3-816b-b479-d057-c06e13a84b2f@postgrespro.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


On 23.08.2016 15:41, Michael Paquier wrote:
> On Tue, Aug 23, 2016 at 8:02 PM, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> wrote:
>> As for PoC, I implemented parallel vacuum so that each worker
>> processes both 1 and 2 phases for particular block range.
>> Suppose we vacuum 1000 blocks table with 4 workers, each worker
>> processes 250 consecutive blocks in phase 1 and then reclaims dead
>> tuples from heap and indexes (phase 2).
> So each worker is assigned a range of blocks, and processes them in
> parallel? This does not sound performance-wise. I recall Robert and
> Amit emails on the matter for sequential scan that this would suck
> performance out particularly for rotating disks.

Rotating disks is not a problem - you can always raid them and etc. 8k
allocation per relation once per half an hour that is the problem. Seq
scan is this way = random scan...

Alex Ignatov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2016-08-23 12:57:13 Re: pg_receivexlog does not report flush position with --synchronous
Previous Message Gabriele Bartolini 2016-08-23 12:48:36 Re: pg_receivexlog does not report flush position with --synchronous