diff --git a/fdbserver/KeyValueStoreRocksDB.actor.cpp b/fdbserver/KeyValueStoreRocksDB.actor.cpp index 25af448a5a8..00751e2e427 100644 --- a/fdbserver/KeyValueStoreRocksDB.actor.cpp +++ b/fdbserver/KeyValueStoreRocksDB.actor.cpp @@ -2579,6 +2579,7 @@ void RocksDBKeyValueStore::Writer::action(RestoreAction& a) { ASSERT(db->DropColumnFamily(cf).ok()); db->DestroyColumnFamilyHandle(cf); cfHandles.erase(cf); + cf = nullptr; } rocksdb::ExportImportFilesMetaData metaData = getMetaData(a.checkpoints[0]); diff --git a/fdbserver/KeyValueStoreShardedRocksDB.actor.cpp b/fdbserver/KeyValueStoreShardedRocksDB.actor.cpp index d61afb3be7e..12506b65973 100644 --- a/fdbserver/KeyValueStoreShardedRocksDB.actor.cpp +++ b/fdbserver/KeyValueStoreShardedRocksDB.actor.cpp @@ -993,6 +993,7 @@ struct PhysicalShard { const CheckpointFormat format = checkpoint.getFormat(); rocksdb::Status status; if (format == DataMoveRocksCF) { + ASSERT(cf == nullptr); rocksdb::ExportImportFilesMetaData metaData = getMetaData(checkpoint); if (metaData.files.empty()) { TraceEvent(SevInfo, "RocksDBRestoreEmptyShard") @@ -2737,7 +2738,7 @@ struct ShardedRocksDBKeyValueStore : IKeyValueStore { if (!metadata.files.empty() && SERVER_KNOBS->ROCKSDB_ENABLE_CHECKPOINT_VALIDATION) { rocksdb::ImportColumnFamilyOptions importOptions; importOptions.move_files = false; - rocksdb::ColumnFamilyHandle* handle; + rocksdb::ColumnFamilyHandle* handle{ nullptr }; const std::string cfName = deterministicRandom()->randomAlphaNumeric(8); s = a.shardManager->getDb()->CreateColumnFamilyWithImport( rocksdb::ColumnFamilyOptions(), cfName, importOptions, metadata, &handle);