-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Errors in removeIdleSockets #239
Comments
I haven't seen this issue myself, though I am currently investigating a potential threading issue around There are two threads on Linux which perform |
That theory makes sense to me! I just got another crash that seems related. All I got from the logs is this:
This has only happened once, so it is pretty rare. I don't see anything unusual in the logs beforehand. |
@bridger I'm also getting this issue, have you found a solution? |
@mikezander have you moved to Swift 5 recently? We've had a few reports of this and it looks like it's a bug in URLSession on Linux. There is a prototype fix here that we are hoping to get into Swift 5.0.1: swiftlang/swift-corelibs-foundation#2061 |
@ianpartridge No I actually haven't updated to Swift 5 yet. I'm still running Swift 4 on Kitura version 2.3.0, I was thinking I should update to 2.5.0, could that possibly fix the issue? |
Hmm I can't replicate it but based off that bug it looks like the issue is Swift related. |
Interesting. All the reports we have had so far are on Swift 5. The problem is definitely in Foundation not Kitura so I'm afraid upgrading Kitura is unlikely to help (although we would recommend you do that anyway as there are piles of improvements since version 2.3!). Out of interest, are you running on Swift 4.0, 4.1 or 4.2? We are discussing how long to continue to support earlier versions of Swift, and user feedback would be very helpful. As for your immediate problem, the only option I can suggest is to avoid using |
just to report the same issue Swift version 5.1 (swift-5.1.2-RELEASE) Kitura 2.8.0 This makes it totally unusable as a lot of requests fail (even with just 10 concurrent requests and 100 requests so not exactly high load) ab -n 100 -c 10 https://.../index Benchmarking press.toys (be patient).....done Server Software: Apache/2.4.41 Document Path: /index Concurrency Level: 10 Connection Times (ms) Percentage of the requests served within a certain time (ms) :( |
In my server log I see these errors:
[IncomingSocketManager.swift:252 removeIdleSockets(removeAll:)] epoll_ctl failure. Error code=1. Reason=Operation not permitted
It seems that the removeIdleSockets is getting the
EPERM
exception when cleaning up idle connections.I'm running my server using this Docker container. It is deployed on Amazon ECS.
My server is mostly a websocket server. There is a memory leak I'm trying to investigate and I wonder if this might be related.
The text was updated successfully, but these errors were encountered: