diff --git a/src/util/src/tcache.c b/src/util/src/tcache.c index ab887637cbcd85e026aba9f4a0dea4c75d7d486c..61d888607a4edcaf41bff36b919a451752a433b6 100644 --- a/src/util/src/tcache.c +++ b/src/util/src/tcache.c @@ -522,7 +522,7 @@ void *taosGetDataFromCache(void *handle, char *key) { pthread_rwlock_rdlock(&pObj->lock); SDataNode *ptNode = taosGetNodeFromHashTable(handle, key, keyLen); if (ptNode != NULL) { - ptNode->refCount += 1; + __sync_add_and_fetch_32(&ptNode->refCount, 1); } pthread_rwlock_unlock(&pObj->lock);