Mario Salazar de Torres created GEODE-8552:
----------------------------------------------
Summary: Connection is still attempted even if address resolution
failed in TcpConn
Key: GEODE-8552
URL: https://issues.apache.org/jira/browse/GEODE-8552
Project: Geode
Issue Type: Improvement
Components: native client
Affects Versions: 1.13.0, 1.12.0, 1.11.0
Reporter: Mario Salazar de Torres
Whenever there are problems with DNS resolution, while creating a TcpConn,
resolution of the address might fail. Thing is connection is tried and the
error you get is the following one:
{noformat}
[fine 2020/08/27 10:56:20.030379 UTC secret-pod-name:1 139944253187840]
ThinClientPoolDM::createPoolConnectionToAEndPoint( ): creating a new connection
to the endpoint server-2.geode.secret-ns.svc.cluster.local:40404
[fine 2020/08/27 10:56:20.030391 UTC secret-pod-name:1 139944253187840]
TcrEndpoint::createNewConnection: connectTimeout =59000000us
m_needToConnectInLock=1 appThreadRequest =1
[debug 2020/08/27 10:56:20.030406 UTC secret-pod-name:1 139944253187840]
m_expiryTimeVariancePercentage set to: -1
[debug 2020/08/27 10:56:20.030555 UTC secret-pod-name:1 139944253187840]
Tcrconnection const isSecondary = 0 and isClientNotification = 0, this =
0x7f4720028cc0, conn ref to endopint 3
[finest 2020/08/27 10:56:20.033738 UTC secret-pod-name:1 139944253187840] Using
socket send buffer size of 64240.
[finest 2020/08/27 10:56:20.033756 UTC secret-pod-name:1 139944253187840] Using
socket receive buffer size of 64240.
[debug 2020/08/27 10:56:20.033760 UTC secret-pod-name:1 139944253187840]
Creating plain socket stream
[finer 2020/08/27 10:56:20.033786 UTC secret-pod-name:1 139944253187840]
Connecting plain socket stream to secret-pod-name:0 waiting 59000000us micro sec
[info 2020/08/27 10:56:20.033884 UTC secret-pod-name:1 139944253187840] IO
error in handshake with
endpoint[server-2.geode.secret-ns.svc.cluster.local:40404]: TcpConn::connect
failed with errno: 99: Cannot assign requested address{noformat}
Which as can be seen it's not really descriptive. So the idea would be to
validate the address before the connection happens and log a proper error.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)