RE: invalid data in file backup_label problem on windows
wangsh.fnst@fujitsu.com <wangsh.fnst@fujitsu.com>
From: "wangsh.fnst@fujitsu.com" <wangsh.fnst@fujitsu.com>
To: David Steele <david@pgmasters.net>
Cc: Michael Paquier <michael@paquier.xyz>, "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2021-03-19T10:11:46Z
Lists: pgsql-hackers
Hi, David Steele <david@pgmasters.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
Commits
-
doc: Clarify how to generate backup files with non-exclusive backups
- cc7416f3b679 9.6.22 landed
- 89bd8e8b3328 10.17 landed
- eb5e380a08a2 11.12 landed
- 677357047b9c 12.7 landed
- f8c2d491234f 13.3 landed
- 6fb66c268df2 14.0 landed