From: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
To: Mark Steben <msteben@autorevenue.com>
Cc: jd@commandprompt.com
Cc: pgsql-performance@postgresql.org
Subject: Re: Performance of archive logging in a PITR restore
Date: Wed, 18 Mar 2009 13:33:59 +0200
Message-ID: <49C0DC27.3080400@enterprisedb.com> (raw)
In-Reply-To: <1237220490.29552.1.camel@jd-laptop.pragmaticzealot.org>
References: <20090316161202.AE645632876@mail.postgresql.org>
<1237220490.29552.1.camel@jd-laptop.pragmaticzealot.org>
Joshua D. Drake wrote:
> On Mon, 2009-03-16 at 12:11 -0400, Mark Steben wrote:
>> The issue is that during a restore on a remote site, (Postgres 8.2.5)
8.2.5 is quite old. You should upgrade to the latest 8.2.X release.
>> archived logs are taking an average of 35 – 40 seconds apiece to
>> restore.
>
> Archive logs are restored in a serialized manner so they will be slower
> to restore in general.
Yeah, if you have several concurrent processes on the primary doing I/O
and generating log, at restore the I/O will be serialized.
Version 8.3 is significantly better with this (as long as you don't
disable full_page_writes). In earlier versions, each page referenced in
the WAL was read from the filesystem, only to be replaced with the full
page image. In 8.3, we skip the read and just write over the page image.
Depending on your application, that can make a very dramatic difference
to restore time.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: heikki.linnakangas@enterprisedb.com, msteben@autorevenue.com, jd@commandprompt.com
Subject: Re: Performance of archive logging in a PITR restore
In-Reply-To: <49C0DC27.3080400@enterprisedb.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox