Re: Re: BUG #10329: Could not read block 0 in file "base/56100265/57047884": read only 0 of 8192 bytes

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Greg Stark <stark(at)mit(dot)edu>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Olivier Macchioni <olivier(dot)macchioni(at)wingo(dot)ch>, Bruce Momjian <bruce(at)momjian(dot)us>, PostgreSQL Bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: Re: BUG #10329: Could not read block 0 in file "base/56100265/57047884": read only 0 of 8192 bytes
Date: 2014-05-16 12:03:03
Message-ID: 20140516120303.GC28158@awork2.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 2014-05-16 12:58:57 +0100, Greg Stark wrote:
> On Thu, May 15, 2014 at 8:25 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> > One of the arguments against Bruce's proposal to print a warning at hash
> > index creation is that it's a particularly ineffective form of
> > deprecation. In your example, since the hash index was created by some
> > app not manually, I'll bet nobody would have seen/noticed the warning
> > even if there had been one.
>
> I suggested we make a GUC allow_unrecoverable_indexes and default it
> to false. If you want to create hash indexes you need to set it to
> true or else you just get errors.

Fine with me.

> A more general solution is to emit a WAL record the first time a
> non-crashsafe index is touched after a checkpoint. On a slave that
> record could just mark the index invalid.

Not trivially no. Recovery can't write to the catalog.

Greetings,

Andres Freund

--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2014-05-16 13:45:02 Re: Re: BUG #10329: Could not read block 0 in file "base/56100265/57047884": read only 0 of 8192 bytes
Previous Message Greg Stark 2014-05-16 11:58:57 Re: BUG #10329: Could not read block 0 in file "base/56100265/57047884": read only 0 of 8192 bytes