Bug 1025765 - EBADF from select() cause TransportExceptions in client
Summary: EBADF from select() cause TransportExceptions in client
Keywords:
Status: VERIFIED
Alias: None
Product: JBoss Data Grid 6
Classification: JBoss
Component: CPP Client
Version: 6.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: CR2
: 6.2.1
Assignee: Tristan Tarrant
QA Contact: Alan Field
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-11-01 13:50 UTC by Radim Vansa
Modified: 2018-09-12 22:31 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Known Issue
Doc Text:
When more than several hundred Hot Rod client instances are created within a single process, TransportExceptions are thrown due to problems with connecting socket to the server. Mileage may vary depending on the OS configuration.
Clone Of:
Environment:
Last Closed:
Type: Bug


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker HRCPP-66 0 None None None 2014-07-15 00:17:36 UTC

Description Radim Vansa 2013-11-01 13:50:59 UTC
During stress testing, when about 200-300 clients per node are spawned, some of the sys::Socket::connect() attempts fail with TransportException.

This is preceded by the ::connect() call returning failing with EINPROGRESS, followed by ::select() failing with EBADF. However, even after the failure ::fnctl() reports the socket to be O_RDWR | O_NONBLOCK (as it should be) without error.

I had a suspicion that this may be related to the number of file descriptors, but ulimit -n shows that the limits are high above that.

Comment 2 Martin Gencur 2014-03-27 09:00:09 UTC
This was fixed a long time ago. Setting ON_QA

Comment 3 Alan Field 2014-03-31 14:45:40 UTC
Verified with JDG 6.2.1 CR3


Note You need to log in before you can comment on or make changes to this bug.