RE: invalid data in file backup_label problem on windows

From: "wangsh(dot)fnst(at)fujitsu(dot)com" <wangsh(dot)fnst(at)fujitsu(dot)com>
To: David Steele <david(at)pgmasters(dot)net>
Cc: Michael Paquier <michael(at)paquier(dot)xyz>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: RE: invalid data in file backup_label problem on windows
Date: 2021-03-19 10:11:46
Message-ID: OSBPR01MB4214051A0D5D8D7C990D1FF2F2689@OSBPR01MB4214.jpnprd01.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

David Steele <david(at)pgmasters(dot)net> wrote:

> I'm not sure how I feel about this patch (not really a Windows person)
> but I do think that you shouldn't modify the backup_label when writing
> it, i.e. you should be writing backup_label in binary mode to avoid this
> issue.

IMO, I don't modify backup_lable, I just execute select * FROM pg_stop_backup(),
copy the result from terminal to a file and save the file, but most of editor on
Windows will using CRLF as default to edit file, such as notepad, notepad++.

BTW, in [1]
> The pg_stop_backup will return one row with three values. The second
> of these fields should be written to a file named backup_label in the root
> directory of the backup. The third field should be written to a file named
> tablespace_map unless the field is empty. These files are vital to the backup
> working, and must be written without modification.

Do not use CRLF to edit a backup_label on windows is not mentioned.

> No objections from me if it gets committed but I'm not sure it should be
> classified as a "bug fix" since the backup_label was modified from what
> postgres provided, unless I am misunderstanding.

I think the backup_label is not a postgres provided file(using Non-Exclusive Low Level API),
this file must be created by user.
If users use Exclusive Low Level API or pg_basebakup, this file will be auto created, and
users will not edit this file.

Therefore, I think this is a bug instead of a misuse

[1] https://www.postgresql.org/docs/13/continuous-archiving.html#BACKUP-LOWLEVEL-BASE-BACKUP

-------------
Best Regards
Shenhao Wang

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Justin Pryzby 2021-03-19 11:01:34 Re: fdatasync performance problem with large number of DB files
Previous Message houzj.fnst@fujitsu.com 2021-03-19 10:10:24 RE: Parallel Inserts in CREATE TABLE AS