void TRI_DestroyPrimaryCollection (TRI_primary_collection_t* primary) { size_t i, n; if (primary->_keyGenerator != NULL) { TRI_FreeKeyGenerator(primary->_keyGenerator); } TRI_DestroyReadWriteLock(&primary->_compactionLock); TRI_DestroyReadWriteLock(&primary->_lock); TRI_DestroyAssociativePointer(&primary->_primaryIndex); if (primary->_shaper != NULL) { TRI_FreeVocShaper(primary->_shaper); } n = primary->_datafileInfo._nrAlloc; for (i = 0; i < n; ++i) { TRI_doc_datafile_info_t* dfi = primary->_datafileInfo._table[i]; if (dfi != NULL) { FreeDatafileInfo(dfi); } } TRI_DestroyAssociativePointer(&primary->_datafileInfo); TRI_DestroyBarrierList(&primary->_barrierList); TRI_DestroyCollection(&primary->base); }
void TRI_DestroyDocCollection (TRI_doc_collection_t* collection) { if (collection->_shaper != NULL) { TRI_FreeVocShaper(collection->_shaper); } FreeDatafileInfo(&collection->_datafileInfo); TRI_DestroyBarrierList(&collection->_barrierList); TRI_DestroyCollection(&collection->base); }
void TRI_DestroyPrimaryCollection (TRI_primary_collection_t* primary) { if (primary->_keyGenerator != NULL) { TRI_FreeKeyGenerator(primary->_keyGenerator); } TRI_DestroyReadWriteLock(&primary->_lock); TRI_DestroyAssociativePointer(&primary->_primaryIndex); if (primary->_shaper != NULL) { TRI_FreeVocShaper(primary->_shaper); } FreeDatafileInfo(&primary->_datafileInfo); TRI_DestroyBarrierList(&primary->_barrierList); TRI_DestroyCollection(&primary->base); }
void TRI_FreeCollection (TRI_collection_t* collection) { assert(collection); TRI_DestroyCollection(collection); TRI_Free(TRI_UNKNOWN_MEM_ZONE, collection); }
void TRI_DestroyShapeCollection (TRI_shape_collection_t* collection) { assert(collection); TRI_DestroyMutex(&collection->_lock); TRI_DestroyCollection(&collection->base); }