Re: pg_dump/pg_restore: Fix stdin/stdout handling of custom format on Win32
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>
Cc: Daniel Watzinger <daniel.watzinger@gmail.com>, Daniel Gustafsson <daniel@yesql.se>, pgsql-hackers@postgresql.org
Date: 2023-03-10T01:37:35Z
Lists: pgsql-hackers
On Fri, Mar 10, 2023 at 12:12:37AM +0100, Juan José Santamaría Flecha wrote: > I've broken the patch in two: > 1. fixes the detection of unseekable files in checkSeek(), using logic that > hopefully is backpatchable, > 2. the improvements on file type detection for stat() proposed by the OP. I am OK with 0002, so I'll try to get this part backpatched down to where the implementation of stat() has been added. I am not completely sure that 0001 is the right way forward, though, particularly with the long-term picture.. In the backend, we have one caller of fseeko() as of read_binary_file(), so we would never pass down a pipe to that. However, there could be a risk of some silent breakages on Windows if some new code relies on that? There is a total of 11 callers of fseeko() in pg_dump, so rather than relying on checkSeek() to see if it actually works, I'd like to think that we should have a central policy to make this code more bullet-proof in the future. -- Michael
Commits
-
Improve WIN32 port of fstat() to detect more file types
- bbf18fe199c5 14.8 landed
- 69b6032e0d1d 15.3 landed
- 765f5df72691 16.0 landed