Merge pull request #6121 from taosdata/hotfix/TD-4020
[TD-4020]duplicated queries in show result
This commit is contained in:
commit
66e689c634
|
@ -54,14 +54,14 @@ void tscAddIntoSqlList(SSqlObj *pSql) {
|
||||||
pSql->next = pObj->sqlList;
|
pSql->next = pObj->sqlList;
|
||||||
if (pObj->sqlList) pObj->sqlList->prev = pSql;
|
if (pObj->sqlList) pObj->sqlList->prev = pSql;
|
||||||
pObj->sqlList = pSql;
|
pObj->sqlList = pSql;
|
||||||
pSql->queryId = queryId++;
|
pSql->queryId = atomic_fetch_add_32(&queryId, 1);
|
||||||
|
|
||||||
pthread_mutex_unlock(&pObj->mutex);
|
pthread_mutex_unlock(&pObj->mutex);
|
||||||
|
|
||||||
pSql->stime = taosGetTimestampMs();
|
pSql->stime = taosGetTimestampMs();
|
||||||
pSql->listed = 1;
|
pSql->listed = 1;
|
||||||
|
|
||||||
tscDebug("0x%"PRIx64" added into sqlList", pSql->self);
|
tscDebug("0x%"PRIx64" added into sqlList, queryId:%u", pSql->self, pSql->queryId);
|
||||||
}
|
}
|
||||||
|
|
||||||
void tscSaveSlowQueryFpCb(void *param, TAOS_RES *result, int code) {
|
void tscSaveSlowQueryFpCb(void *param, TAOS_RES *result, int code) {
|
||||||
|
|
|
@ -2431,16 +2431,16 @@ void tscDoQuery(SSqlObj* pSql) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCmd->command == TSDB_SQL_SELECT) {
|
|
||||||
tscAddIntoSqlList(pSql);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pCmd->dataSourceType == DATA_FROM_DATA_FILE) {
|
if (pCmd->dataSourceType == DATA_FROM_DATA_FILE) {
|
||||||
tscImportDataFromFile(pSql);
|
tscImportDataFromFile(pSql);
|
||||||
} else {
|
} else {
|
||||||
SQueryInfo *pQueryInfo = tscGetQueryInfoDetail(pCmd, pCmd->clauseIndex);
|
SQueryInfo *pQueryInfo = tscGetQueryInfoDetail(pCmd, pCmd->clauseIndex);
|
||||||
uint16_t type = pQueryInfo->type;
|
uint16_t type = pQueryInfo->type;
|
||||||
|
|
||||||
|
if ((pCmd->command == TSDB_SQL_SELECT) && (!TSDB_QUERY_HAS_TYPE(type, TSDB_QUERY_TYPE_SUBQUERY)) && (!TSDB_QUERY_HAS_TYPE(type, TSDB_QUERY_TYPE_STABLE_SUBQUERY))) {
|
||||||
|
tscAddIntoSqlList(pSql);
|
||||||
|
}
|
||||||
|
|
||||||
if (TSDB_QUERY_HAS_TYPE(type, TSDB_QUERY_TYPE_INSERT)) { // multi-vnodes insertion
|
if (TSDB_QUERY_HAS_TYPE(type, TSDB_QUERY_TYPE_INSERT)) { // multi-vnodes insertion
|
||||||
tscHandleMultivnodeInsert(pSql);
|
tscHandleMultivnodeInsert(pSql);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -123,8 +123,9 @@ SConnObj *mnodeAccquireConn(int32_t connId, char *user, uint32_t ip, uint16_t po
|
||||||
if (/* pConn->ip != ip || */ pConn->port != port /* || strcmp(pConn->user, user) != 0 */) {
|
if (/* pConn->ip != ip || */ pConn->port != port /* || strcmp(pConn->user, user) != 0 */) {
|
||||||
mDebug("connId:%d, incoming conn user:%s ip:%s:%u, not match exist conn user:%s ip:%s:%u", connId, user,
|
mDebug("connId:%d, incoming conn user:%s ip:%s:%u, not match exist conn user:%s ip:%s:%u", connId, user,
|
||||||
taosIpStr(ip), port, pConn->user, taosIpStr(pConn->ip), pConn->port);
|
taosIpStr(ip), port, pConn->user, taosIpStr(pConn->ip), pConn->port);
|
||||||
taosCacheRelease(tsMnodeConnCache, (void **)&pConn, false);
|
pConn->port = port;
|
||||||
return NULL;
|
//taosCacheRelease(tsMnodeConnCache, (void **)&pConn, false);
|
||||||
|
//return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
// mDebug("connId:%d, is incoming, user:%s ip:%s:%u", connId, pConn->user, taosIpStr(pConn->ip), pConn->port);
|
// mDebug("connId:%d, is incoming, user:%s ip:%s:%u", connId, pConn->user, taosIpStr(pConn->ip), pConn->port);
|
||||||
|
|
|
@ -253,10 +253,6 @@ static int32_t mnodeProcessHeartBeatMsg(SMnodeMsg *pMsg) {
|
||||||
|
|
||||||
int32_t connId = htonl(pHBMsg->connId);
|
int32_t connId = htonl(pHBMsg->connId);
|
||||||
SConnObj *pConn = mnodeAccquireConn(connId, connInfo.user, connInfo.clientIp, connInfo.clientPort);
|
SConnObj *pConn = mnodeAccquireConn(connId, connInfo.user, connInfo.clientIp, connInfo.clientPort);
|
||||||
if (pConn == NULL) {
|
|
||||||
pHBMsg->pid = htonl(pHBMsg->pid);
|
|
||||||
pConn = mnodeCreateConn(connInfo.user, connInfo.clientIp, connInfo.clientPort, pHBMsg->pid, pHBMsg->appName);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pConn == NULL) {
|
if (pConn == NULL) {
|
||||||
// do not close existing links, otherwise
|
// do not close existing links, otherwise
|
||||||
|
|
|
@ -124,6 +124,8 @@ int64_t genQueryId(void) {
|
||||||
|
|
||||||
uid |= sid;
|
uid |= sid;
|
||||||
|
|
||||||
|
qDebug("gen qid:0x%"PRIx64, uid);
|
||||||
|
|
||||||
return uid;
|
return uid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue