| From: | Andres Freund <andres(at)anarazel(dot)de> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: Misleading "epoll_create1 failed: Too many open files" |
| Date: | 2024-11-26 17:21:21 |
| Message-ID: | aa2hsgt5c3loa3nk5bvmyvoxl32v5x36mshq36yshrkg5375oo@5pkvm3rwiad7 |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi,
On 2024-11-26 11:35:56 -0500, Tom Lane wrote:
> Andres Freund <andres(at)anarazel(dot)de> writes:
> > I think it's rather confusing to claim that epoll_create1() failed when we
> > didn't even call it.
> > Why are we misattributing the failure to a system call that we didn't make?
>
> I think the idea was that this mechanism is equivalent to an EMFILE
> limit. But if you feel a need to make a distinction, this seems fine:
>
> > elog(ERROR, "AcquireExternalFD, for epoll_create1, failed: %m");
>
> You should probably check all of 3d475515a, because I think
> I applied the same idea in more than one place.
Yea, there's another equivalent message for kqueue a few lines below.
The commit also added uses of AcquireExternalFD() to dblink and postgres_fdw (
since migrated to libpq-be-fe-helpers.h), but I don't think those need
improving in the same way. They never made it sound like it was a syscall
itself failing.
Greetings,
Andres Freund
| Attachment | Content-Type | Size |
|---|---|---|
| v1-0001-Distinguish-between-AcquireExternalFD-and-epoll_c.patch | text/x-diff | 1.7 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2024-11-26 17:26:51 | Re: Misleading "epoll_create1 failed: Too many open files" |
| Previous Message | Robert Haas | 2024-11-26 17:16:27 | Re: Self contradictory examining on rel's baserestrictinfo |