diff --git a/src/rpc/src/rpcMain.c b/src/rpc/src/rpcMain.c index 604406112717bef5b61671032cd59b8606c54e5d..efc2a5fa6a3e0e9ec7f65cb7a1ae5f0da8eb57a6 100644 --- a/src/rpc/src/rpcMain.c +++ b/src/rpc/src/rpcMain.c @@ -493,7 +493,7 @@ static SRpcConn *rpcOpenConn(SRpcInfo *pRpc, char *peerFqdn, uint16_t peerPort, SRpcConn *pConn; uint32_t peerIp = taosGetIpFromFqdn(peerFqdn); - if (peerIp == -1) { + if (peerIp == 0xFFFFFFFF) { tError("%s, failed to resolve FQDN:%s", pRpc->label, peerFqdn); terrno = TSDB_CODE_RPC_APP_ERROR; return NULL; diff --git a/src/util/src/tsocket.c b/src/util/src/tsocket.c index 00c8bba94e21151b9491673ba055d0c7c26b70e3..1f4d57115b2758b9144863a44f0fc49da2c14142 100644 --- a/src/util/src/tsocket.c +++ b/src/util/src/tsocket.c @@ -29,11 +29,12 @@ int taosGetFqdn(char *fqdn) { hints.ai_flags = AI_CANONNAME; - getaddrinfo(hostname, NULL, &hints, &result); + int32_t ret = getaddrinfo(hostname, NULL, &hints, &result); if (result) { strcpy(fqdn, result->ai_canonname); freeaddrinfo(result); } else { + uError("failed to get fqdn, code:%d, reason:%s", ret, gai_strerror(ret)); code = -1; } @@ -42,9 +43,12 @@ int taosGetFqdn(char *fqdn) { uint32_t taosGetIpFromFqdn(const char *fqdn) { struct addrinfo hints = {0}; + hints.ai_family = AF_UNSPEC; + hints.ai_socktype = SOCK_STREAM; + struct addrinfo *result = NULL; - getaddrinfo(fqdn, NULL, &hints, &result); + int32_t ret = getaddrinfo(fqdn, NULL, &hints, &result); if (result) { struct sockaddr *sa = result->ai_addr; struct sockaddr_in *si = (struct sockaddr_in*)sa; @@ -53,7 +57,8 @@ uint32_t taosGetIpFromFqdn(const char *fqdn) { freeaddrinfo(result); return ip; } else { - return -1; + uError("failed get the ip address, fqdn:%s, code:%d, reason:%s", fqdn, ret, gai_strerror(ret)); + return 0xFFFFFFFF; } }