Skip to content
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

Windows client could put 10054 error messages into firebird.log at connection time [CORE3351] #3717

Closed
firebird-automations opened this issue Feb 15, 2011 · 5 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: @hvlad

During tests with high load and simultaneous creation of many connections i found that firebriod.log contains a lot of INET errors such as

INET/inet\_error: send errno = 10054

Debugging shows that in this condition it is possible to have successful call of connect() function followed by error in send() call.
No problems at server side was found.

Commits: 5b0fee7 0489857 d756a02 0b3cac1

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

assignee: Vlad Khorsun [ hvlad ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

Fix Version: 2.5.1 [ 10333 ]

Fix Version: 3.0 Alpha 1 [ 10331 ]

Fix Version: 2.0.7 [ 10390 ]

Fix Version: 2.1.5 [ 10420 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @hvlad

Solution is to use SOMAXCONN as value for backlog parameter at call of listen().
Before value of 5 was hardcoded for call of listen().

MSDN said about backlog parameter :

Maximum length of the queue of pending connections. If set to SOMAXCONN, the underlying service provider responsible for socket s will set the backlog to a maximum reasonable value.

Note, that SOMAXCONN is still defined as 5 in winsock.h while at winsock2.h it is defined as 0x7fffffff
So it is correct and safe to use SOMAXCONN and to include winsock2.h instead of old winsock.h

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

status: Resolved [ 5 ] => Closed [ 6 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

status: Closed [ 6 ] => Closed [ 6 ]

QA Status: Cannot be tested

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment