My Oracle Support Banner

NETWORK-OS/CONFIG: System calls "select()" and "poll()" will indicate sockets are readable even though there is no data available (Doc ID 1010357.1)

Last updated on SEPTEMBER 29, 2020

Applies to:

Solaris Operating System - Version 8.0 and later
All Platforms


Applications that use TCP sockets to exchange data via the network will be affected. If an application uses the system call poll() and select() to check the arrival of data, these system calls will indicate new data even if there is no data available.

As a result of the above, when applications use blocking mode sockets, applications will be blocked executing the read()/recv() system calls which are attempting to retrieve non-existent data. Similarly, when these applications use non-blocking mode socket, the read()/recv() system calls will return an EAGAIN error in response to the lack of available data. This issue may happen if the TCP module detects checksum error.


To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.