diff --git a/source/util/src/tcompare.c b/source/util/src/tcompare.c index 94c4e27487..09599cead4 100644 --- a/source/util/src/tcompare.c +++ b/source/util/src/tcompare.c @@ -1228,7 +1228,9 @@ static void checkRegexCache(void* param, void* tmrId) { UsingRegex **ppUsingRegex = taosHashIterate(sRegexCache.regexHash, NULL); while ((ppUsingRegex != NULL)) { if (taosGetTimestampSec() - (*ppUsingRegex)->lastUsedTime > REGEX_CACHE_CLEAR_TIME) { - taosHashRemove(sRegexCache.regexHash, ppUsingRegex); + size_t len = 0; + char* key = (char*)taosHashGetKey(ppUsingRegex, &len); + taosHashRemove(sRegexCache.regexHash, key, len); } ppUsingRegex = taosHashIterate(sRegexCache.regexHash, ppUsingRegex); }