Alberto Gomez created GEODE-8847:
------------------------------------
Summary: Use boost::asio::ip::tcp::resolver::resolve method
instead of the asynchronous one
Key: GEODE-8847
URL: https://issues.apache.org/jira/browse/GEODE-8847
Project: Geode
Issue Type: Improvement
Components: native client
Reporter: Alberto Gomez
The async_resolve method of the boost::asio::ip::tcp::resolver class allows to
perform asynchronous calls for name resolution which would, in theory, permit
to add a timeout to the name resolution, useful when DNS calls take long.
In practice, it has been observed that this call creates a thread internally
and even if a timeout is set in the io_context run method and the call exits at
timeout, subsequent calls to run or the destruction of the io_context will wait
for the thread created by the async_resolve method to finish which provokes
that calls to the resolver can take longer than the timeout set.
As a consequence, it is proposed to use the synchronous version of the method
(resolve) which makes the code simpler and does not lead to interpret that a
timeout out can be set to the name resolution.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)