Re: finding changed blocks using WAL scanning

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: finding changed blocks using WAL scanning
Date: 2019-04-16 02:22:34
Message-ID: 20190416022234.2t7ei5ndcdptd3pk@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Apr 15, 2019 at 09:04:13PM -0400, Robert Haas wrote:
> On Mon, Apr 15, 2019 at 4:31 PM Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> > Can I throw out a simple idea? What if, when we finish writing a WAL
> > file, we create a new file 000000010000000000000001.modblock which
> > lists all the heap/index files and block numbers modified in that WAL
> > file? How much does that help with the list I posted earlier?
> >
> > I think there is some interesting complexity brought up in this thread.
> > Which options are going to minimize storage I/O, network I/O, have only
> > background overhead, allow parallel operation, integrate with
> > pg_basebackup. Eventually we will need to evaluate the incremental
> > backup options against these criteria.
> >
> > I am thinking tools could retain modblock files along with WAL, could
> > pull full-page-writes from WAL, or from PGDATA. It avoids the need to
> > scan 16MB WAL files, and the WAL files and modblock files could be
> > expired independently.
>
> That is pretty much exactly what I was intending to propose.

OK, good. Some of your wording was vague so I was unclear exactly what
you were suggesting.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ As you are, so once was I. As I am, so you will be. +
+ Ancient Roman grave inscription +

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Alexander Korotkov 2019-04-16 02:30:05 Improve search for missing parent downlinks in amcheck
Previous Message Jamison, Kirk 2019-04-16 01:48:37 RE: Speedup of relation deletes during recovery