diff --git a/source/libs/tfs/src/tfs.c b/source/libs/tfs/src/tfs.c index 18a3a28bab..0054a94b80 100644 --- a/source/libs/tfs/src/tfs.c +++ b/source/libs/tfs/src/tfs.c @@ -160,7 +160,12 @@ bool tfsIsSameFile(const STfsFile *pFile1, const STfsFile *pFile2) { if (pFile1 == NULL || pFile2 == NULL || pFile1->pTfs != pFile2->pTfs) return false; if (pFile1->did.level != pFile2->did.level) return false; if (pFile1->did.id != pFile2->did.id) return false; - if (strncmp(pFile1->rname, pFile2->rname, TSDB_FILENAME_LEN) != 0) return false; + char nameBuf1[TMPNAME_LEN], nameBuf2[TMPNAME_LEN]; + memset(nameBuf1, 0, TMPNAME_LEN); + memset(nameBuf2, 0, TMPNAME_LEN); + taosRealPath(pFile1->rname, nameBuf1, TMPNAME_LEN); + taosRealPath(pFile2->rname, nameBuf2, TMPNAME_LEN); + if (strncmp(nameBuf1, nameBuf2, TMPNAME_LEN) != 0) return false; return true; }