[td-225]fix bugs during retrieve result from mnode.
This commit is contained in:
parent
5ac1c1bb67
commit
7db1438970
|
@ -213,7 +213,8 @@ void taos_fetch_rows_a(TAOS_RES *taosa, void (*fp)(void *, TAOS_RES *, int), voi
|
||||||
// handle the sub queries of join query
|
// handle the sub queries of join query
|
||||||
if (pCmd->command == TSDB_SQL_TABLE_JOIN_RETRIEVE) {
|
if (pCmd->command == TSDB_SQL_TABLE_JOIN_RETRIEVE) {
|
||||||
tscFetchDatablockFromSubquery(pSql);
|
tscFetchDatablockFromSubquery(pSql);
|
||||||
} else if (pRes->completed && pCmd->command == TSDB_SQL_FETCH) {
|
} else if (pRes->completed) {
|
||||||
|
if(pCmd->command == TSDB_SQL_FETCH) {
|
||||||
if (hasMoreVnodesToTry(pSql)) { // sequentially retrieve data from remain vnodes.
|
if (hasMoreVnodesToTry(pSql)) { // sequentially retrieve data from remain vnodes.
|
||||||
tscTryQueryNextVnode(pSql, tscAsyncQueryRowsForNextVnode);
|
tscTryQueryNextVnode(pSql, tscAsyncQueryRowsForNextVnode);
|
||||||
return;
|
return;
|
||||||
|
@ -234,6 +235,12 @@ void taos_fetch_rows_a(TAOS_RES *taosa, void (*fp)(void *, TAOS_RES *, int), voi
|
||||||
(*pSql->fetchFp)(param, pSql, 0);
|
(*pSql->fetchFp)(param, pSql, 0);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
} else if (pCmd->command == TSDB_SQL_RETRIEVE) {
|
||||||
|
// in case of show command, return no data
|
||||||
|
(*pSql->fetchFp)(param, pSql, 0);
|
||||||
|
} else {
|
||||||
|
assert(0);
|
||||||
|
}
|
||||||
} else { // current query is not completed, continue retrieve from node
|
} else { // current query is not completed, continue retrieve from node
|
||||||
if (pCmd->command != TSDB_SQL_RETRIEVE_LOCALMERGE && pCmd->command < TSDB_SQL_LOCAL) {
|
if (pCmd->command != TSDB_SQL_RETRIEVE_LOCALMERGE && pCmd->command < TSDB_SQL_LOCAL) {
|
||||||
pCmd->command = (pCmd->command > TSDB_SQL_MGMT) ? TSDB_SQL_RETRIEVE : TSDB_SQL_FETCH;
|
pCmd->command = (pCmd->command > TSDB_SQL_MGMT) ? TSDB_SQL_RETRIEVE : TSDB_SQL_FETCH;
|
||||||
|
|
Loading…
Reference in New Issue