From: | Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Japin Li <japinli(at)hotmail(dot)com> |
Cc: | "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Replace open mode with PG_BINARY_R/W/A macros |
Date: | 2022-04-20 20:11:20 |
Message-ID: | 96c9ecac-9d8a-23e8-7cad-5ca1f4d2683d@enterprisedb.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 19.04.22 16:21, Tom Lane wrote:
> * In the other direction, decide that the PG_BINARY_X macros are
> offering no benefit at all and just rip 'em out, writing "rb" and
> so on in their place. POSIX specifies that the character "b" has
> no effect on Unix-oid systems, and it has said that for thirty years
> now, so we do not really need the platform dependency that presently
> exists in the macro definitions. The presence or absence of "b"
> would serve fine as an indicator of intent, and there would be one
> less PG-specific coding convention to remember.
I can only imagine that there must have been some Unix systems that did
not understand the "binary" APIs required for Windows. (For example,
neither the Linux nor the macOS open(2) man page mentions O_BINARY.)
Otherwise, these macros don't make any sense, because then you could
just write the thing directly on all platforms.
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2022-04-20 20:29:04 | when should we set DB_IN_PRODUCTION? |
Previous Message | Andrew Dunstan | 2022-04-20 19:56:17 | Re: Postgres perl module namespace |