| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Vladlen Popolitov <v(dot)popolitov(at)postgrespro(dot)ru> |
| Cc: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
| Subject: | Re: zic: fix PostgreSQL build failure on filesystems without hard link support |
| Date: | 2026-07-31 17:07:50 |
| Message-ID: | 1771779.1785517670@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Vladlen Popolitov <v(dot)popolitov(at)postgrespro(dot)ru> writes:
> Tom Lane писал(а) 2026-07-31 17:08:
>> Interesting. I wonder if it'd be sane to put in an explicit mapping
>> for ERROR_INVALID_FUNCTION, although I'm not quite sure whether to
>> prefer ENOTSUP or EOPNOTSUPP.
> We could try other approach - avoid changing zic and _dosmaperr()
> and fix link() like this in src/port/win32link.c:
> if (returncode == ERROR_INVALID_FUNCTION)
> errno = ENOTSUP;
> else
> dosmaperr(returncode);
Yeah, that sounds like the solution with the smallest blast radius.
We know that ERROR_INVALID_FUNCTION means this for link(), but
it's hardly clear that that applies across-the-board; it seems
like EINVAL is probably the best translation in other cases.
Another advantage is that we don't have to sync it with changes in
zic.c: this will still do what we want after Eggert's changes of
today[1] arrive, whereas other answers might not.
I'll go make it so in a bit. Thanks for the report!
regards, tom lane
[1] https://lists.iana.org/hyperkitty/list/tz(at)iana(dot)org/thread/O5Q2I3GLZIF6GEFZ3MDWRZKG4ENPJVFQ/
| From | Date | Subject | |
|---|---|---|---|
| Next Message | David K | 2026-07-31 18:15:08 | Re: Bug: XLogReader mishandles oversized multi-page xl_tot_len (potential memory corruption) |
| Previous Message | Robert Haas | 2026-07-31 16:55:33 | Re: walsummarizer can get stuck when switching timelines |