Merge pull request #20086 from taosdata/fix/TD-22670

fix(tsdb/cache): use state's tsdb instead of readers
This commit is contained in:
Xiaoyu Wang 2023-02-23 10:39:26 +08:00 committed by GitHub
commit ebcd7415c1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 6 deletions

View File

@ -779,12 +779,11 @@ static int32_t getNextRowFromFS(void *iter, TSDBROW **ppRow) {
code = tsdbReadBlockIdx(*state->pDataFReader, state->aBlockIdx); code = tsdbReadBlockIdx(*state->pDataFReader, state->aBlockIdx);
if (code) goto _err; if (code) goto _err;
*/ */
int32_t code = int32_t code = tsdbCacheGetBlockIdx(state->pTsdb->biCache, *state->pDataFReader, &state->aBlockIdxHandle);
tsdbCacheGetBlockIdx((*state->pDataFReader)->pTsdb->biCache, *state->pDataFReader, &state->aBlockIdxHandle);
if (code != TSDB_CODE_SUCCESS || state->aBlockIdxHandle == NULL) { if (code != TSDB_CODE_SUCCESS || state->aBlockIdxHandle == NULL) {
goto _err; goto _err;
} }
state->aBlockIdx = (SArray *)taosLRUCacheValue((*state->pDataFReader)->pTsdb->biCache, state->aBlockIdxHandle); state->aBlockIdx = (SArray *)taosLRUCacheValue(state->pTsdb->biCache, state->aBlockIdxHandle);
/* if (state->pBlockIdx) { */ /* if (state->pBlockIdx) { */
/* } */ /* } */
@ -855,7 +854,7 @@ static int32_t getNextRowFromFS(void *iter, TSDBROW **ppRow) {
if (state->aBlockIdx) { if (state->aBlockIdx) {
// taosArrayDestroy(state->aBlockIdx); // taosArrayDestroy(state->aBlockIdx);
tsdbBICacheRelease((*state->pDataFReader)->pTsdb->biCache, state->aBlockIdxHandle); tsdbBICacheRelease(state->pTsdb->biCache, state->aBlockIdxHandle);
state->aBlockIdxHandle = NULL; state->aBlockIdxHandle = NULL;
state->aBlockIdx = NULL; state->aBlockIdx = NULL;
@ -881,7 +880,7 @@ _err:
}*/ }*/
if (state->aBlockIdx) { if (state->aBlockIdx) {
// taosArrayDestroy(state->aBlockIdx); // taosArrayDestroy(state->aBlockIdx);
tsdbBICacheRelease((*state->pDataFReader)->pTsdb->biCache, state->aBlockIdxHandle); tsdbBICacheRelease(state->pTsdb->biCache, state->aBlockIdxHandle);
state->aBlockIdxHandle = NULL; state->aBlockIdxHandle = NULL;
state->aBlockIdx = NULL; state->aBlockIdx = NULL;
@ -910,7 +909,7 @@ int32_t clearNextRowFromFS(void *iter) {
}*/ }*/
if (state->aBlockIdx) { if (state->aBlockIdx) {
// taosArrayDestroy(state->aBlockIdx); // taosArrayDestroy(state->aBlockIdx);
tsdbBICacheRelease((*state->pDataFReader)->pTsdb->biCache, state->aBlockIdxHandle); tsdbBICacheRelease(state->pTsdb->biCache, state->aBlockIdxHandle);
state->aBlockIdxHandle = NULL; state->aBlockIdxHandle = NULL;
state->aBlockIdx = NULL; state->aBlockIdx = NULL;