invalid data in file backup_label problem on windows - Mailing list pgsql-hackers

From Wang, Shenhao
Subject invalid data in file backup_label problem on windows
Date
Msg-id 8373f61426074f2cb6be92e02f838389@G08CNEXMBPEKD06.g08.fujitsu.local
Whole thread Raw
Responses RE: invalid data in file backup_label problem on windows  ("Wang, Shenhao" <wangsh.fnst@cn.fujitsu.com>)
List pgsql-hackers
Hi hackers.

When I using a Non-Exclusive Low-Level Backup on windows, "invalid data in file backup_label" will be shown.

The code are listed below

    if (fscanf(lfp, "START WAL LOCATION: %X/%X (file %08X%16s)%c",
               &hi, &lo, &tli_from_walseg, startxlogfilename, &ch) != 5 || ch != '\n')
        ereport(FATAL,
                (errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE),
                 errmsg("invalid data in file \"%s\"", BACKUP_LABEL_FILE)));

When I wrote the backup_label on windows, CRLF will at the end of line, so the ch will be '\r'.

I'm not sure that these two files(tablespace_map and backup_label) should not use CRLF new line style is mentioned in
manual[1].
How about setting the text mode when reading these 2 files like patch listed in attachment?

Any thought?

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


Best Regards,
Shenhao Wang





Attachment

pgsql-hackers by date:

Previous
From: Tatsuo Ishii
Date:
Subject: Inconsistent "" use
Next
From: Bruce Momjian
Date:
Subject: Re: Key management with tests