Page MenuHomePhabricator

Fix the functional tests on platforms using select() instead of poll()
ClosedPublic

Authored by Fabien on Dec 8 2020, 14:02.

Details

Summary

On such platforms the select() interface limits the number of file
descriptors to FD_SETSIZE, which is usually 1024. Since D8605 the
default value for -maxconnections is 4096, which cannot be reached.

Therefore the software will output a warning to tell the user that the
max connections is being reduced due to system limitation. This used to
be a special case before D8605 and required manually setting
-maxconnections, but this is no longer the case. As a consequence this
warning causes the functional tests to fail, because they expect stderr
to be empty.

Since this is a normal behavior, this diff downgrades the warning to a
standard log line. The documentation is updated to inform the user that
this value might not be reachable if set manually.

Test Plan

On Linux and OSX:

ninja check-functional

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable