On Fri, Apr 4, 2008 at 7:46 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "John Smith" <sodgodofall@gmail.com> writes:
> > Steps to reproduce:
> > -- start with a running PG instance with WAL archiving enabled
> > -- select pg_start_backup('test');
> > -- Fill up the disk on which the data directory is present
> > -- select pg_stop_backup();
> > -- fails with: ERROR: could not write file
> > "pg_xlog/000000010000000000000000.004989E8.backup": No space left on device
> > -- at this point there is a 0-byte file
> > pg_xlog/000000010000000000000000.004989E8.backup present on disk
> > -- stop and start PG
> > -- recovery fails with: FATAL: invalid data in file
> > "000000010000000000000000.004989E8.backup"
> > -- NOTE: At this point removing 000000010000000000000000.004989E8.backup
> > allows PG to start successfully
>
> What do you see as the bug here? Seems like reasonable behavior to me.
>
> regards, tom lane
>
I was expecting one of two things:
1. The zero-byte file is removed upon failure to write during
pg_stop_backup() (or )
2. The zero-byte file is ignored or deleted on startup, since the
administrator has no choice but to delete the file upon a failed
startup.
- John