panettone: Leaking some kind of resource
Panettone seems to be leaking some kind of resource:
Apr 09 23:01:19 whitby panettone-start[59330]: [2021-04-09 23:01:19 [ERROR]] Socket error in "socket": 24 (Too many open files) Apr 09 23:01:19 whitby panettone-start[59330]: 127.0.0.1 (44.131.18.98) - [2021-04-09 23:01:19] "GET /issues/102 HTTP/1.0" 500 300 "https://b.tvl.fyi/" "Mozilla/5.0 (Android 11; Mobile; rv:>Apr 09 23:01:21 whitby panettone-start[59330]: [2021-04-09 23:01:21 [ERROR]] Condition USOCKET:NS-HOST-NOT-FOUND-ERROR was signalled. Apr 09 23:01:21 whitby panettone-start[59330]: 127.0.0.1 (44.131.18.98) - [2021-04-09 23:01:21] "GET /issues/101 HTTP/1.0" 500 300 "https://b.tvl.fyi/" "Mozilla/5.0 (Android 11; Mobile; rv:>
This problem is relatively new, might be related to the email thing.
eta said on ##tvl-dev:
[1:03:59 am] <+eta> I mean there's probably a stream that doesn't get closed somewhere [1:04:07 am] <+eta> did you forget an UNWIND-PROTECT [1:04:32 am] <+eta> CL doesn't close streams automatically [1:04:42 am] <+eta> which is why you do the with-open-whatever thing
Okay, doing several different things because I'm annoyed by this today (I linked panettone somewhere publicly and it went down).
My first theory is that we may be leaking LDAP connections when checking user auth. I'm trying out cl/5193 for this.
My second theory is that our custom handling of threads & postgres connections is wrong. I'm making a change that replaces this with postmodern's native connection pooling. In fact I'm posting this comment from an instance of panettone running that change, so it seems to be working.
tazjin at 2022-02-02T22·56+00
We may now have fixed this, but it's hard to say until this version of panettone has been running for a few days.
tazjin at 2022-02-14T10·43+00
Fixed in cl/5772 and the other one that refactored DB stuff. No more leaky resources, because no more LDAP.
tazjin at 2022-05-28T18·36+00
- tazjin closed this issue at 2022-05-28T18·36+00