Re: Does PostgreSQL check database integrity at startup? - Mailing list pgsql-hackers

From rob stone
Subject Re: Does PostgreSQL check database integrity at startup?
Date
Msg-id 1514326316.3143.16.camel@gmail.com
Whole thread Raw
In response to Re: Does PostgreSQL check database integrity at startup?  (Alvaro Herrera <alvherre@alvh.no-ip.org>)
Responses Re: Does PostgreSQL check database integrity at startup?
List pgsql-hackers
Hello,


On Tue, 2017-12-26 at 18:58 -0300, Alvaro Herrera wrote:Hello,
> David Steele wrote:
> 
> > pgBackRest will validate all page checksums (including indexes,
> > etc.) in the
> > cluster during backup.  Full backups check everything,
> > incr/differential
> > backups check only the files that have changed.
> 
> If a table or index file is of zero length when backed up, as in the
> described case, nothing will be checked, right?  I mean, there is
> nothing externally indicating that the file ought to be of a
> different
> size.  Am I wrong?  So Edson's situation here would not raise any red
> flags.
> 


Could the following occur:-
1) Your app. issues a BEGIN followed by an INSERT.
2) Postgres decides to open a new file in order to store the new row.
3) Your app. then does a ROLLBACK.

Wouldn't that leave you with a zero length file on disk?

There's no reason for Postgres to delete the file just because a
rollback was issued. All it has to do is clear the buffer in memory.

My 2 cents.

Rob 


pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: Does PostgreSQL check database integrity at startup?
Next
From: Fabien COELHO
Date:
Subject: Re: [HACKERS] pow support for pgbench