-
Connor authored
As Rocksdb described, `DropColumnFamilies()` only records the drop of the column family specified by ColumnFamilyHandle. The actual data is not deleted until the client calls `delete column_family`, namely `DestroyColumnFamilyHandle()`. We can still continue using the column family if we have outstanding ColumnFamilyHandle pointer. now there are some problems: - after dropping column family, the blob files of it may be deleted before column family handle is destroyed. - When opening DB without some existing column families(not supported yet), the blob file of these will be regarded as obsolete files and deleted. - After destroyed column handle(not drop the column, just not need to read/write it anymore), we need to remove inner blob storage and evict related cache.
05a37557