-
Notifications
You must be signed in to change notification settings - Fork 53
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
Fix socket connection reset #46
Conversation
Thank you for your interest and contribution. I have read you change, it seems that it should work but there's something that bothers me. The code must be non-blocking and there's a 1000ms wait for a response from the socket. I wonder if that's a scenario that will actually happen, given the previous conditions. |
Actually that's not milliseconds, that's microseconds. I didn't notice any performance impact in my tests, and the problem disappeared. You can do your own tests though. |
Been having the same problem, Using MacOS and Big Sur. |
It appears that provided fix works on .NET Core but doesn't work on .NET5 for some reason. I decided to remove the connection reset check completely for now, because the client sends keep-alive pings and if there is real connection loss, we will fall in a short time. |
well, after a long time of not maintaining this project, i went to nuget to see if it's popular. I was surprise to see that it has over a million downloads, i think it's time to get back into it. I'm currently working full time, so it'll take me some time to refresh my memory. hopefully I'd be able to provide a new version that fixes all new issues (maybe also finally upgrade to the latest client spec). i hope i can count on you guys to test, thanks again for your interest |
Hi, I think we might be experiencing the same problems with .netcore3.1 and linux containers, is there any progress on this? |
Use socket.Poll before judge socket.Available equals 0 |
I am now closing this PR because provided solution with For my use case it is completely fine to remove connection lost check completely. However, it might not be the case for all consumers. You can use either of the solutions described in this thread as a workaround, but I suggest a more thorough analysis of the problem. |
@HolyPrapor , what would be the workaround, I must have missed them. |
The first workaround is to use Both of those require editing the source code and recompiling, unfortunately. |
Which javac.target and javac.source versions you are using because when I try to compile the code it says
When I change value to >1.6 compilation starts throwing errors
|
@kuskmen, sorry, I am unable to help you in this regard because the last time I compiled this was almost two years ago, so I'm not sure what to say here, but this is definitely doable. I just followed this readme, nothing fancy. |
Yes, I followed the readme and it got me there, anyway, I will try to figure it out myself. |
No description provided.