fix: fix filter error result

This commit is contained in:
yihaoDeng 2023-02-13 13:28:52 +08:00
parent 0f803fca10
commit 0fd0c64157
2 changed files with 13 additions and 19 deletions

View File

@ -1302,24 +1302,23 @@ int32_t metaFilterTableIds(SMeta *pMeta, SMetaFltParam *param, SArray *pUids) {
if (valid < 0) { if (valid < 0) {
break; break;
} }
if (count >= TRY_ERROR_LIMIT) {
break;
}
STagIdxKey *p = entryKey; STagIdxKey *p = entryKey;
if (p == NULL) break; if (p == NULL) break;
if (count >= TRY_ERROR_LIMIT) { if (p->type != pCursor->type || p->suid != pCursor->suid || p->cid != pCursor->cid) {
if (p->type != pCursor->type || p->suid != pCursor->suid || p->cid != pCursor->cid) { count++;
valid = param->reverse ? tdbTbcMoveToPrev(pCursor->pCur) : tdbTbcMoveToNext(pCursor->pCur);
if (valid < 0) {
break; break;
} } else {
} else { continue;
if (p->type != pCursor->type || p->suid != pCursor->suid || p->cid != pCursor->cid) {
count++;
valid = param->reverse ? tdbTbcMoveToPrev(pCursor->pCur) : tdbTbcMoveToNext(pCursor->pCur);
if (valid < 0) {
break;
} else {
continue;
}
} }
} }
int32_t cmp = (*param->filterFunc)(p->data, pKey->data, pKey->type); int32_t cmp = (*param->filterFunc)(p->data, pKey->data, pKey->type);
if (cmp == 0) { if (cmp == 0) {
// match // match
@ -1331,13 +1330,8 @@ int32_t metaFilterTableIds(SMeta *pMeta, SMetaFltParam *param, SArray *pUids) {
} }
taosArrayPush(pUids, &tuid); taosArrayPush(pUids, &tuid);
} else { } else {
if (count >= TRY_ERROR_LIMIT) { // opt later
if (param->equal == false) {
break;
}
}
} }
count++;
valid = param->reverse ? tdbTbcMoveToPrev(pCursor->pCur) : tdbTbcMoveToNext(pCursor->pCur); valid = param->reverse ? tdbTbcMoveToPrev(pCursor->pCur) : tdbTbcMoveToNext(pCursor->pCur);
if (valid < 0) { if (valid < 0) {
break; break;

View File

@ -7,7 +7,7 @@ print ======== step0
$dbPrefix = ta_3_db $dbPrefix = ta_3_db
$tbPrefix = ta_3_tb $tbPrefix = ta_3_tb
$mtPrefix = ta_3_mt $mtPrefix = ta_3_mt
$tbNum = 10 $tbNum = 101
$rowNum = 20 $rowNum = 20
$totalNum = 200 $totalNum = 200