[td-1373]

This commit is contained in:
Haojun Liao 2020-10-22 17:46:08 +08:00
parent b90807cec9
commit daac5036fc
1 changed files with 36 additions and 14 deletions

View File

@ -362,28 +362,50 @@ static int32_t tscLaunchRealSubqueries(SSqlObj* pSql) {
int32_t num = 0; int32_t num = 0;
int32_t *list = NULL; int32_t *list = NULL;
tsBufGetVnodeIdList(pSupporter->pTSBuf, &num, &list); tsBufGetVnodeIdList(pNewQueryInfo->tsBuf, &num, &list);
for(int32_t k = 0; k < taosArrayGetSize(pTableMetaInfo->pVgroupTables);) { if (pTableMetaInfo->pVgroupTables != NULL) {
SVgroupTableInfo* p = taosArrayGet(pTableMetaInfo->pVgroupTables, k); for(int32_t k = 0; k < taosArrayGetSize(pTableMetaInfo->pVgroupTables);) {
SVgroupTableInfo* p = taosArrayGet(pTableMetaInfo->pVgroupTables, k);
bool found = false; bool found = false;
for(int32_t f = 0; f < num; ++f) { for(int32_t f = 0; f < num; ++f) {
if (p->vgInfo.vgId == list[f]) { if (p->vgInfo.vgId == list[f]) {
found = true; found = true;
break; break;
}
}
if (!found) {
tscRemoveVgroupTableGroup(pTableMetaInfo->pVgroupTables, k);
} else {
k++;
} }
} }
if (!found) { assert(taosArrayGetSize(pTableMetaInfo->pVgroupTables) > 0);
tscRemoveVgroupTableGroup(pTableMetaInfo->pVgroupTables, k); } else { // TODO remove unnecessarily accessed vnode
} else { // pTableMetaInfo->vgroupList->
k++; // for(int32_t k = 0; k < taosArrayGetSize(pTableMetaInfo->pVgroupTables);) {
} // SVgroupTableInfo* p = taosArrayGet(pTableMetaInfo->pVgroupTables, k);
//
// bool found = false;
// for(int32_t f = 0; f < num; ++f) {
// if (p->vgInfo.vgId == list[f]) {
// found = true;
// break;
// }
// }
//
// if (!found) {
// tscRemoveVgroupTableGroup(pTableMetaInfo->pVgroupTables, k);
// } else {
// k++;
// }
// }
} }
taosTFree(list); taosTFree(list);
assert(taosArrayGetSize(pTableMetaInfo->pVgroupTables) > 0);
size_t numOfCols = taosArrayGetSize(pNewQueryInfo->colList); size_t numOfCols = taosArrayGetSize(pNewQueryInfo->colList);
tscDebug("%p subquery:%p tableIndex:%d, vgroupIndex:%d, type:%d, exprInfo:%" PRIzu ", colList:%" PRIzu ", fieldsInfo:%d, name:%s", tscDebug("%p subquery:%p tableIndex:%d, vgroupIndex:%d, type:%d, exprInfo:%" PRIzu ", colList:%" PRIzu ", fieldsInfo:%d, name:%s",