Re: BUG #10675: alter database set tablespace and unlogged table

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andres Freund <andres(at)2ndquadrant(dot)com>, Pavan Deolasee <pavan(dot)deolasee(at)gmail(dot)com>, "maxim(dot)boguk" <maxim(dot)boguk(at)gmail(dot)com>, Pg Bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #10675: alter database set tablespace and unlogged table
Date: 2014-07-02 15:46:11
Message-ID: CA+TgmoaHOWGGivbKRu6PqcROphsDjfHMeeGqWe-echy2rYGJGg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Wed, Jul 2, 2014 at 11:38 AM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Andres Freund <andres(at)2ndquadrant(dot)com> writes:
>> I think one reason for the separate flag is that the checkpoint
>> performed by pg_start_backup/pg_basebackup shouldn't just become more
>> expensive because unlogged tables are needlessly flushed to disk. After
>> all, unlogged tables are used because normal tables have a too high
>> overhead in that scenario.
>
> AFAIK, the "overhead" that unlogged tables are trying to avoid is WAL
> I/O. Nobody has argued (until this thread) that we are worried about
> whether checkpoints write them.

Sorry, I didn't see this thread until just now.

I was definitely worried about that issue when I wrote the unlogged
tables patch, and I added the BM_PERMANENT for precisely that reason.
I think it's a completely legitimate worry, too. The point of
avoiding WAL I/O is that writing WAL to disk is expensive; writing
data files to disk is no less expensive, and often moreso, because
it's not always sequential I/O.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Andres Freund 2014-07-02 15:46:56 Re: BUG #10675: alter database set tablespace and unlogged table
Previous Message Tom Lane 2014-07-02 15:38:51 Re: BUG #10675: alter database set tablespace and unlogged table