Merge pull request #7321 from taosdata/fix/TD-5610
[TD-5610]<fix> resp detailed info of invalidfqdn
This commit is contained in:
commit
46a0b3bf96
|
@ -502,10 +502,22 @@ static void doProcessMsgFromServer(SSchedMsg* pSchedMsg) {
|
||||||
}
|
}
|
||||||
rpcMsg->code = (pRes->code == TSDB_CODE_SUCCESS) ? (int32_t)pRes->numOfRows : pRes->code;
|
rpcMsg->code = (pRes->code == TSDB_CODE_SUCCESS) ? (int32_t)pRes->numOfRows : pRes->code;
|
||||||
if (pRes->code == TSDB_CODE_RPC_FQDN_ERROR) {
|
if (pRes->code == TSDB_CODE_RPC_FQDN_ERROR) {
|
||||||
|
tscAllocPayload(pCmd, TSDB_FQDN_LEN + 64);
|
||||||
|
// handle three situation
|
||||||
|
// 1. epset retry, only return last failure ep
|
||||||
|
// 2. no epset retry, like 'taos -h invalidFqdn', return invalidFqdn
|
||||||
|
// 3. other situation, no expected
|
||||||
if (pEpSet) {
|
if (pEpSet) {
|
||||||
char buf[TSDB_FQDN_LEN + 64] = {0};
|
|
||||||
tscAllocPayload(pCmd, sizeof(buf));
|
|
||||||
sprintf(tscGetErrorMsgPayload(pCmd), "%s\"%s\"", tstrerror(pRes->code),pEpSet->fqdn[(pEpSet->inUse)%(pEpSet->numOfEps)]);
|
sprintf(tscGetErrorMsgPayload(pCmd), "%s\"%s\"", tstrerror(pRes->code),pEpSet->fqdn[(pEpSet->inUse)%(pEpSet->numOfEps)]);
|
||||||
|
} else if (pCmd->command >= TSDB_SQL_MGMT) {
|
||||||
|
SRpcEpSet tEpset;
|
||||||
|
|
||||||
|
SRpcCorEpSet *pCorEpSet = pSql->pTscObj->tscCorMgmtEpSet;
|
||||||
|
taosCorBeginRead(&pCorEpSet->version);
|
||||||
|
tEpset = pCorEpSet->epSet;
|
||||||
|
taosCorEndRead(&pCorEpSet->version);
|
||||||
|
|
||||||
|
sprintf(tscGetErrorMsgPayload(pCmd), "%s\"%s\"", tstrerror(pRes->code),tEpset.fqdn[(tEpset.inUse)%(tEpset.numOfEps)]);
|
||||||
} else {
|
} else {
|
||||||
sprintf(tscGetErrorMsgPayload(pCmd), "%s", tstrerror(pRes->code));
|
sprintf(tscGetErrorMsgPayload(pCmd), "%s", tstrerror(pRes->code));
|
||||||
}
|
}
|
||||||
|
|
|
@ -1133,8 +1133,8 @@ static void rpcNotifyClient(SRpcReqContext *pContext, SRpcMsg *pMsg) {
|
||||||
} else {
|
} else {
|
||||||
// for asynchronous API
|
// for asynchronous API
|
||||||
SRpcEpSet *pEpSet = NULL;
|
SRpcEpSet *pEpSet = NULL;
|
||||||
//if (pContext->epSet.inUse != pContext->oldInUse || pContext->redirect)
|
if (pContext->epSet.inUse != pContext->oldInUse || pContext->redirect)
|
||||||
pEpSet = &pContext->epSet;
|
pEpSet = &pContext->epSet;
|
||||||
|
|
||||||
(*pRpc->cfp)(pMsg, pEpSet);
|
(*pRpc->cfp)(pMsg, pEpSet);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue