Re: WAL logging volume and CREATE TABLE

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: WAL logging volume and CREATE TABLE
Дата
Msg-id 201108021532.p72FWvQ29530@momjian.us
обсуждение исходный текст
Ответ на Re: WAL logging volume and CREATE TABLE  (Merlin Moncure <mmoncure@gmail.com>)
Список pgsql-hackers
Merlin Moncure wrote:
> On Tue, Aug 2, 2011 at 8:34 AM, Bruce Momjian <bruce@momjian.us> wrote:
> > Our docs suggest an optimization to reduce WAL logging when you are
> > creating and populating a table:
> >
> > ? ? ? ?http://www.postgresql.org/docs/9.0/static/runtime-config-wal.html#RUNTIME-CONFIG-WAL-SETTINGS
> >
> > ? ? ? ?In minimal level, WAL-logging of some bulk operations, like CREATE
> > ? ? ? ?INDEX, CLUSTER and COPY on a table that was created or truncated in the
> > ? ? ? ?same transaction can be safely skipped, which can make those operations
> > ? ? ? ?much faster (see Section 14.4.7). But minimal WAL does not contain
> > ? ? ? ?enough information to reconstruct the data from a base backup and the
> > ? ? ? ?WAL logs, so either archive or hot_standby level must be used to enable
> > ? ? ? ?WAL archiving (archive_mode) and streaming replication.
> >
> > I am confused why we issue significant WAL traffic for CREATE INDEX?
> > Isn't the index either created or removed if the transaction fails?
> > What crash recovery activity state do we need WAL logging for? ?I
> > realize we have to do WAL logging for streaming replication, but CREATE
> > TABLE isn't going to affect that. ? I also realize the index has to be
> > on disk on commit, but the same is true for doing the CREATE TABLE in
> > the same transaction block.
> >
> > Does this optimization work for INSERT ... SELECT?
> 
> I don't think so -- insert/select doesn't take a full table lock and
> it writes to the heap.  The optimization only works when other

My question is whether INSERT ... SELECT is/could be optimized when the
CREATE TABLE happens in the same transaction block.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: WAL logging volume and CREATE TABLE
Следующее
От: Tom Lane
Дата:
Сообщение: Re: WAL logging volume and CREATE TABLE