Merge pull request #29456 from taosdata/enh/addDetailErrMsgRpc

add detail err msg
This commit is contained in:
Hongze Cheng 2025-01-03 14:41:01 +08:00 committed by GitHub
commit 1551bd46db
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 22 additions and 10 deletions

View File

@ -1109,27 +1109,39 @@ void uvOnConnectionCb(uv_stream_t* q, ssize_t nread, const uv_buf_t* buf) {
return; return;
} }
if (uv_accept(q, (uv_stream_t*)(pConn->pTcp)) == 0) { if ((code = uv_accept(q, (uv_stream_t*)(pConn->pTcp))) == 0) {
uv_os_fd_t fd; uv_os_fd_t fd;
TAOS_UNUSED(uv_fileno((const uv_handle_t*)pConn->pTcp, &fd)); TAOS_UNUSED(uv_fileno((const uv_handle_t*)pConn->pTcp, &fd));
tTrace("conn %p created, fd:%d", pConn, fd); tTrace("conn %p created, fd:%d", pConn, fd);
struct sockaddr peername, sockname; struct sockaddr_storage peername, sockname;
// Get and valid the peer info
int addrlen = sizeof(peername); int addrlen = sizeof(peername);
if (0 != uv_tcp_getpeername(pConn->pTcp, (struct sockaddr*)&peername, &addrlen)) { if ((code = uv_tcp_getpeername(pConn->pTcp, (struct sockaddr*)&peername, &addrlen)) != 0) {
tError("conn %p failed to get peer info", pConn); tError("conn %p failed to get peer info since %s", pConn, uv_strerror(code));
transUnrefSrvHandle(pConn); transUnrefSrvHandle(pConn);
return; return;
} }
TAOS_UNUSED(transSockInfo2Str(&peername, pConn->dst)); if (peername.ss_family != AF_INET) {
tError("conn %p failed to get peer info since not support other protocol except ipv4", pConn);
transUnrefSrvHandle(pConn);
return;
}
TAOS_UNUSED(transSockInfo2Str((struct sockaddr*)&peername, pConn->dst));
// Get and valid the sock info
addrlen = sizeof(sockname); addrlen = sizeof(sockname);
if (0 != uv_tcp_getsockname(pConn->pTcp, (struct sockaddr*)&sockname, &addrlen)) { if ((code = uv_tcp_getsockname(pConn->pTcp, (struct sockaddr*)&sockname, &addrlen)) != 0) {
tError("conn %p failed to get local info", pConn); tError("conn %p failed to get local info since %s", pConn, uv_strerror(code));
transUnrefSrvHandle(pConn); transUnrefSrvHandle(pConn);
return; return;
} }
TAOS_UNUSED(transSockInfo2Str(&sockname, pConn->src)); if (sockname.ss_family != AF_INET) {
tError("conn %p failed to get sock info since not support other protocol except ipv4", pConn);
transUnrefSrvHandle(pConn);
return;
}
TAOS_UNUSED(transSockInfo2Str((struct sockaddr*)&sockname, pConn->src));
struct sockaddr_in addr = *(struct sockaddr_in*)&peername; struct sockaddr_in addr = *(struct sockaddr_in*)&peername;
struct sockaddr_in saddr = *(struct sockaddr_in*)&sockname; struct sockaddr_in saddr = *(struct sockaddr_in*)&sockname;
@ -1149,7 +1161,7 @@ void uvOnConnectionCb(uv_stream_t* q, ssize_t nread, const uv_buf_t* buf) {
return; return;
} }
} else { } else {
tDebug("failed to create new connection"); tDebug("failed to create new connection reason %s", uv_err_name(code));
transUnrefSrvHandle(pConn); transUnrefSrvHandle(pConn);
} }
} }