refCount may be negative is vnodeRelease is called appropriately
add assert there in case it happens
This commit is contained in:
parent
56e1f90d4b
commit
4ecb5e0f7f
|
@ -202,11 +202,13 @@ int32_t vnodeClose(int32_t vgId) {
|
||||||
|
|
||||||
void vnodeRelease(void *pVnodeRaw) {
|
void vnodeRelease(void *pVnodeRaw) {
|
||||||
SVnodeObj *pVnode = pVnodeRaw;
|
SVnodeObj *pVnode = pVnodeRaw;
|
||||||
|
int32_t vgId = pVnode->vgId;
|
||||||
|
|
||||||
int32_t refCount = atomic_sub_fetch_32(&pVnode->refCount, 1);
|
int32_t refCount = atomic_sub_fetch_32(&pVnode->refCount, 1);
|
||||||
|
assert(refCount >= 0);
|
||||||
|
|
||||||
if (refCount > 0) {
|
if (refCount > 0) {
|
||||||
dTrace("pVnode:%p vgId:%d, release vnode, refCount:%d", pVnode, pVnode->vgId, refCount);
|
dTrace("pVnode:%p vgId:%d, release vnode, refCount:%d", pVnode, vgId, refCount);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue