Merge pull request #19869 from taosdata/FIX/TS-2533-main
enh: reset wal reader after walReadVer
This commit is contained in:
commit
b7549bdc4e
|
@ -191,6 +191,7 @@ int32_t walApplyVer(SWal *, int64_t ver);
|
||||||
// read
|
// read
|
||||||
SWalReader *walOpenReader(SWal *, SWalFilterCond *pCond);
|
SWalReader *walOpenReader(SWal *, SWalFilterCond *pCond);
|
||||||
void walCloseReader(SWalReader *pRead);
|
void walCloseReader(SWalReader *pRead);
|
||||||
|
void walReadReset(SWalReader *pReader);
|
||||||
int32_t walReadVer(SWalReader *pRead, int64_t ver);
|
int32_t walReadVer(SWalReader *pRead, int64_t ver);
|
||||||
int32_t walReadSeekVer(SWalReader *pRead, int64_t ver);
|
int32_t walReadSeekVer(SWalReader *pRead, int64_t ver);
|
||||||
int32_t walNextValidMsg(SWalReader *pRead);
|
int32_t walNextValidMsg(SWalReader *pRead);
|
||||||
|
|
|
@ -249,6 +249,7 @@ int32_t raftLogGetEntry(struct SSyncLogStore* pLogStore, SyncIndex index, SSyncR
|
||||||
|
|
||||||
int64_t ts2 = taosGetTimestampNs();
|
int64_t ts2 = taosGetTimestampNs();
|
||||||
code = walReadVer(pWalHandle, index);
|
code = walReadVer(pWalHandle, index);
|
||||||
|
walReadReset(pWalHandle);
|
||||||
int64_t ts3 = taosGetTimestampNs();
|
int64_t ts3 = taosGetTimestampNs();
|
||||||
|
|
||||||
// code = walReadVerCached(pWalHandle, index);
|
// code = walReadVerCached(pWalHandle, index);
|
||||||
|
|
|
@ -594,3 +594,12 @@ int32_t walReadVer(SWalReader *pReader, int64_t ver) {
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void walReadReset(SWalReader *pReader) {
|
||||||
|
taosThreadMutexLock(&pReader->mutex);
|
||||||
|
taosCloseFile(&pReader->pIdxFile);
|
||||||
|
taosCloseFile(&pReader->pLogFile);
|
||||||
|
pReader->curInvalid = 1;
|
||||||
|
pReader->curFileFirstVer = -1;
|
||||||
|
taosThreadMutexUnlock(&pReader->mutex);
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue