From b6caecea282941f9cf1d884066f242369c616165 Mon Sep 17 00:00:00 2001 From: Minglei Jin Date: Mon, 19 Dec 2022 17:11:08 +0800 Subject: [PATCH] tdb/pager: seek jfd to file begin when abort --- source/libs/tdb/src/db/tdbPager.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/source/libs/tdb/src/db/tdbPager.c b/source/libs/tdb/src/db/tdbPager.c index 09c2206111..b554170b39 100644 --- a/source/libs/tdb/src/db/tdbPager.c +++ b/source/libs/tdb/src/db/tdbPager.c @@ -466,12 +466,18 @@ int tdbPagerAbort(SPager *pPager, TXN *pTxn) { return -1; } + if (tdbOsLSeek(jfd, 0L, SEEK_SET) < 0) { + tdbError("failed to lseek jfd due to %s. file:%s, offset:0", strerror(errno), pPager->dbFileName); + terrno = TAOS_SYSTEM_ERROR(errno); + return -1; + } + u8 *pageBuf = tdbOsCalloc(1, pPager->pageSize); if (pageBuf == NULL) { return -1; } - tdbTrace("tdb/abort: pgno:%p,", pPager); + tdbDebug("tdb/abort: pager:%p,", pPager); for (int pgIndex = 0; pgIndex < journalSize; ++pgIndex) { // read pgno & the page from journal